@lifi/sdk 3.7.2 → 3.7.4
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 -6
- package/src/_cjs/core/EVM/EVMStepExecutor.js +3 -3
- package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -1
- package/src/_cjs/core/EVM/checkAllowance.js +8 -2
- package/src/_cjs/core/EVM/checkAllowance.js.map +1 -1
- package/src/_cjs/core/EVM/checkPermitSupport.js +8 -9
- package/src/_cjs/core/EVM/checkPermitSupport.js.map +1 -1
- package/src/_cjs/core/EVM/getActionWithFallback.js +23 -0
- package/src/_cjs/core/EVM/getActionWithFallback.js.map +1 -0
- package/src/_cjs/core/EVM/getAllowance.js +10 -9
- package/src/_cjs/core/EVM/getAllowance.js.map +1 -1
- package/src/_cjs/core/EVM/getEVMBalance.js +11 -8
- package/src/_cjs/core/EVM/getEVMBalance.js.map +1 -1
- package/src/_cjs/core/EVM/parseEVMErrors.js +13 -1
- package/src/_cjs/core/EVM/parseEVMErrors.js.map +1 -1
- package/src/_cjs/core/EVM/permits/getNativePermit.js +4 -3
- package/src/_cjs/core/EVM/permits/getNativePermit.js.map +1 -1
- package/src/_cjs/core/EVM/permits/getPermitTransferFromValues.js +2 -1
- package/src/_cjs/core/EVM/permits/getPermitTransferFromValues.js.map +1 -1
- package/src/_cjs/core/EVM/setAllowance.js +2 -2
- package/src/_cjs/core/EVM/setAllowance.js.map +1 -1
- package/src/_cjs/core/EVM/utils.js +2 -1
- package/src/_cjs/core/EVM/utils.js.map +1 -1
- package/src/_cjs/core/UTXO/getUTXOPublicClient.js +6 -13
- package/src/_cjs/core/UTXO/getUTXOPublicClient.js.map +1 -1
- package/src/_cjs/core/execution.js +3 -1
- package/src/_cjs/core/execution.js.map +1 -1
- package/src/_cjs/version.js +1 -1
- package/src/_esm/core/EVM/EVMStepExecutor.js +4 -4
- package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -1
- package/src/_esm/core/EVM/checkAllowance.js +8 -2
- package/src/_esm/core/EVM/checkAllowance.js.map +1 -1
- package/src/_esm/core/EVM/checkPermitSupport.js +8 -10
- package/src/_esm/core/EVM/checkPermitSupport.js.map +1 -1
- package/src/_esm/core/EVM/getActionWithFallback.js +34 -0
- package/src/_esm/core/EVM/getActionWithFallback.js.map +1 -0
- package/src/_esm/core/EVM/getAllowance.js +10 -9
- package/src/_esm/core/EVM/getAllowance.js.map +1 -1
- package/src/_esm/core/EVM/getEVMBalance.js +11 -8
- package/src/_esm/core/EVM/getEVMBalance.js.map +1 -1
- package/src/_esm/core/EVM/parseEVMErrors.js +11 -0
- package/src/_esm/core/EVM/parseEVMErrors.js.map +1 -1
- package/src/_esm/core/EVM/permits/getNativePermit.js +4 -3
- package/src/_esm/core/EVM/permits/getNativePermit.js.map +1 -1
- package/src/_esm/core/EVM/permits/getPermitTransferFromValues.js +2 -1
- package/src/_esm/core/EVM/permits/getPermitTransferFromValues.js.map +1 -1
- package/src/_esm/core/EVM/setAllowance.js +2 -2
- package/src/_esm/core/EVM/setAllowance.js.map +1 -1
- package/src/_esm/core/EVM/utils.js +2 -1
- package/src/_esm/core/EVM/utils.js.map +1 -1
- package/src/_esm/core/UTXO/getUTXOPublicClient.js +7 -14
- package/src/_esm/core/UTXO/getUTXOPublicClient.js.map +1 -1
- package/src/_esm/core/execution.js +3 -1
- package/src/_esm/core/execution.js.map +1 -1
- package/src/_esm/version.js +1 -1
- package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -1
- package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -1
- package/src/_types/core/EVM/checkPermitSupport.d.ts.map +1 -1
- package/src/_types/core/EVM/getActionWithFallback.d.ts +18 -0
- package/src/_types/core/EVM/getActionWithFallback.d.ts.map +1 -0
- package/src/_types/core/EVM/getAllowance.d.ts +3 -3
- package/src/_types/core/EVM/getAllowance.d.ts.map +1 -1
- package/src/_types/core/EVM/parseEVMErrors.d.ts +1 -0
- package/src/_types/core/EVM/parseEVMErrors.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/getNativePermit.d.ts +7 -1
- package/src/_types/core/EVM/permits/getNativePermit.d.ts.map +1 -1
- package/src/_types/core/EVM/permits/getPermitTransferFromValues.d.ts.map +1 -1
- package/src/_types/core/EVM/utils.d.ts.map +1 -1
- package/src/_types/core/UTXO/getUTXOPublicClient.d.ts +21 -0
- package/src/_types/core/UTXO/getUTXOPublicClient.d.ts.map +1 -1
- package/src/_types/core/execution.d.ts.map +1 -1
- package/src/_types/version.d.ts +1 -1
- package/src/core/EVM/EVMStepExecutor.ts +17 -9
- package/src/core/EVM/checkAllowance.ts +11 -6
- package/src/core/EVM/checkPermitSupport.ts +12 -21
- package/src/core/EVM/getActionWithFallback.ts +58 -0
- package/src/core/EVM/getAllowance.ts +21 -13
- package/src/core/EVM/getEVMBalance.ts +13 -8
- package/src/core/EVM/parseEVMErrors.ts +15 -0
- package/src/core/EVM/permits/getNativePermit.ts +13 -6
- package/src/core/EVM/permits/getPermitTransferFromValues.ts +12 -6
- package/src/core/EVM/setAllowance.ts +2 -2
- package/src/core/EVM/utils.ts +2 -1
- package/src/core/UTXO/getUTXOPublicClient.ts +6 -14
- package/src/core/execution.ts +6 -1
- package/src/version.ts +1 -1
|
@@ -55,7 +55,7 @@ export const setTokenAllowance = async ({ walletClient, token, spenderAddress, a
|
|
|
55
55
|
if (isNativeTokenAddress(token.address)) {
|
|
56
56
|
return;
|
|
57
57
|
}
|
|
58
|
-
const approvedAmount = await getAllowance(
|
|
58
|
+
const approvedAmount = await getAllowance(walletClient, token.address, walletClient.account.address, spenderAddress);
|
|
59
59
|
if (amount > approvedAmount) {
|
|
60
60
|
const approveTx = await setAllowance(walletClient, token.address, spenderAddress, amount);
|
|
61
61
|
return approveTx;
|
|
@@ -74,7 +74,7 @@ export const revokeTokenApproval = async ({ walletClient, token, spenderAddress,
|
|
|
74
74
|
if (isNativeTokenAddress(token.address)) {
|
|
75
75
|
return;
|
|
76
76
|
}
|
|
77
|
-
const approvedAmount = await getAllowance(
|
|
77
|
+
const approvedAmount = await getAllowance(walletClient, token.address, walletClient.account.address, spenderAddress);
|
|
78
78
|
if (approvedAmount > 0) {
|
|
79
79
|
const approveTx = await setAllowance(walletClient, token.address, spenderAddress, 0n);
|
|
80
80
|
return approveTx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setAllowance.js","sourceRoot":"","sources":["../../../core/EVM/setAllowance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAEpD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAc,EACd,YAAqB,EACrB,eAAwB,EACxB,MAAc,EACd,gBAAmC,EACnC,0BAAoC,EACrB,EAAE;IACjB,MAAM,IAAI,GAAG,kBAAkB,CAAC;QAC9B,GAAG,EAAE,UAAU;QACf,YAAY,EAAE,SAAS;QACvB,IAAI,EAAE,CAAC,eAAe,EAAE,MAAM,CAAC;KAChC,CAAC,CAAA;IAEF,IAAI,0BAA0B,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,kBAAkB,GAA0B;QAC9C,EAAE,EAAE,YAAY;QAChB,IAAI;QACJ,oBAAoB,EAClB,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,OAAO;YAC9B,CAAC,CAAC,MAAM,uBAAuB,CAAC,MAAM,CAAC;YACvC,CAAC,CAAC,SAAS;KAChB,CAAA;IAED,IAAI,gBAAgB,EAAE,4BAA4B,EAAE,CAAC;QACnD,MAAM,4BAA4B,GAChC,MAAM,gBAAgB,CAAC,4BAA4B,CAAC;YAClD,WAAW,EAAE,SAAS;YACtB,GAAG,kBAAkB;SACtB,CAAC,CAAA;QAEJ,kBAAkB,GAAG;YACnB,GAAG,kBAAkB;YACrB,GAAG,4BAA4B;SAChC,CAAA;IACH,CAAC;IAED,OAAO,SAAS,CACd,MAAM,EACN,eAAe,EACf,iBAAiB,CAClB,CAAC;QACA,EAAE,EAAE,kBAAkB,CAAC,EAAE;QACzB,OAAO,EAAE,MAAM,CAAC,OAAQ;QACxB,IAAI,EAAE,kBAAkB,CAAC,IAAI;QAC7B,GAAG,EAAE,kBAAkB,CAAC,GAAG;QAC3B,QAAQ,EAAE,kBAAkB,CAAC,QAAQ;QACrC,YAAY,EAAE,kBAAkB,CAAC,YAAY;QAC7C,oBAAoB,EAAE,kBAAkB,CAAC,oBAAoB;KACjC,CAAC,CAAA;AACjC,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,YAAY,EACZ,KAAK,EACL,cAAc,EACd,MAAM,GACc,EAAwB,EAAE;IAC9C,mCAAmC;IACnC,IAAI,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,OAAM;IACR,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,YAAY,CACvC,
|
|
1
|
+
{"version":3,"file":"setAllowance.js","sourceRoot":"","sources":["../../../core/EVM/setAllowance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAEpD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,MAAc,EACd,YAAqB,EACrB,eAAwB,EACxB,MAAc,EACd,gBAAmC,EACnC,0BAAoC,EACrB,EAAE;IACjB,MAAM,IAAI,GAAG,kBAAkB,CAAC;QAC9B,GAAG,EAAE,UAAU;QACf,YAAY,EAAE,SAAS;QACvB,IAAI,EAAE,CAAC,eAAe,EAAE,MAAM,CAAC;KAChC,CAAC,CAAA;IAEF,IAAI,0BAA0B,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,kBAAkB,GAA0B;QAC9C,EAAE,EAAE,YAAY;QAChB,IAAI;QACJ,oBAAoB,EAClB,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,OAAO;YAC9B,CAAC,CAAC,MAAM,uBAAuB,CAAC,MAAM,CAAC;YACvC,CAAC,CAAC,SAAS;KAChB,CAAA;IAED,IAAI,gBAAgB,EAAE,4BAA4B,EAAE,CAAC;QACnD,MAAM,4BAA4B,GAChC,MAAM,gBAAgB,CAAC,4BAA4B,CAAC;YAClD,WAAW,EAAE,SAAS;YACtB,GAAG,kBAAkB;SACtB,CAAC,CAAA;QAEJ,kBAAkB,GAAG;YACnB,GAAG,kBAAkB;YACrB,GAAG,4BAA4B;SAChC,CAAA;IACH,CAAC;IAED,OAAO,SAAS,CACd,MAAM,EACN,eAAe,EACf,iBAAiB,CAClB,CAAC;QACA,EAAE,EAAE,kBAAkB,CAAC,EAAE;QACzB,OAAO,EAAE,MAAM,CAAC,OAAQ;QACxB,IAAI,EAAE,kBAAkB,CAAC,IAAI;QAC7B,GAAG,EAAE,kBAAkB,CAAC,GAAG;QAC3B,QAAQ,EAAE,kBAAkB,CAAC,QAAQ;QACrC,YAAY,EAAE,kBAAkB,CAAC,YAAY;QAC7C,oBAAoB,EAAE,kBAAkB,CAAC,oBAAoB;KACjC,CAAC,CAAA;AACjC,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,YAAY,EACZ,KAAK,EACL,cAAc,EACd,MAAM,GACc,EAAwB,EAAE;IAC9C,mCAAmC;IACnC,IAAI,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,OAAM;IACR,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,YAAY,CACvC,YAAY,EACZ,KAAK,CAAC,OAAkB,EACxB,YAAY,CAAC,OAAQ,CAAC,OAAO,EAC7B,cAAyB,CAC1B,CAAA;IAED,IAAI,MAAM,GAAG,cAAc,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC,YAAY,EACZ,KAAK,CAAC,OAAkB,EACxB,cAAyB,EACzB,MAAM,CACP,CAAA;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,EACxC,YAAY,EACZ,KAAK,EACL,cAAc,GACQ,EAAwB,EAAE;IAChD,mCAAmC;IACnC,IAAI,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,OAAM;IACR,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,YAAY,CACvC,YAAY,EACZ,KAAK,CAAC,OAAkB,EACxB,YAAY,CAAC,OAAQ,CAAC,OAAO,EAC7B,cAAyB,CAC1B,CAAA;IACD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,YAAY,CAClC,YAAY,EACZ,KAAK,CAAC,OAAkB,EACxB,cAAyB,EACzB,EAAE,CACH,CAAA;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;AACH,CAAC,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { getBlock } from 'viem/actions';
|
|
2
2
|
import { config } from '../../config.js';
|
|
3
3
|
import { median } from '../../utils/median.js';
|
|
4
|
+
import { getActionWithFallback } from './getActionWithFallback.js';
|
|
4
5
|
export const convertExtendedChain = (chain) => ({
|
|
5
6
|
...chain,
|
|
6
7
|
...chain.metamask,
|
|
@@ -36,7 +37,7 @@ export function isExtendedChain(chain) {
|
|
|
36
37
|
chain.nativeToken !== null);
|
|
37
38
|
}
|
|
38
39
|
export const getMaxPriorityFeePerGas = async (client) => {
|
|
39
|
-
const block = await
|
|
40
|
+
const block = await getActionWithFallback(client, getBlock, 'getBlock', {
|
|
40
41
|
includeTransactions: true,
|
|
41
42
|
});
|
|
42
43
|
const maxPriorityFeePerGasList = block.transactions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import { http, createClient, fallback, publicActions, rpcSchema,
|
|
1
|
+
import { http, createClient, fallback, publicActions, rpcSchema, walletActions, } from '@bigmi/core';
|
|
2
|
+
import { blockchair } from '@bigmi/core';
|
|
3
|
+
import { blockcypher } from '@bigmi/core';
|
|
4
|
+
import { mempool } from '@bigmi/core';
|
|
2
5
|
import { config } from '../../config.js';
|
|
3
6
|
import { getRpcUrls } from '../rpc.js';
|
|
4
7
|
// cached providers
|
|
@@ -30,19 +33,9 @@ export const getUTXOPublicClient = async (chainId) => {
|
|
|
30
33
|
chain,
|
|
31
34
|
rpcSchema: rpcSchema(),
|
|
32
35
|
transport: fallback([
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}),
|
|
37
|
-
utxo('https://api.blockcypher.com/v1/btc/main', {
|
|
38
|
-
key: 'blockcypher',
|
|
39
|
-
}),
|
|
40
|
-
utxo('https://mempool.space/api', {
|
|
41
|
-
key: 'mempool',
|
|
42
|
-
}),
|
|
43
|
-
utxo('https://rpc.ankr.com/http/btc_blockbook/api/v2', {
|
|
44
|
-
key: 'ankr',
|
|
45
|
-
}),
|
|
36
|
+
blockchair(),
|
|
37
|
+
blockcypher(),
|
|
38
|
+
mempool(),
|
|
46
39
|
...fallbackTransports,
|
|
47
40
|
]),
|
|
48
41
|
pollingInterval: 10_000,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUTXOPublicClient.js","sourceRoot":"","sources":["../../../core/UTXO/getUTXOPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"getUTXOPublicClient.js","sourceRoot":"","sources":["../../../core/UTXO/getUTXOPublicClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,SAAS,EACT,aAAa,GACd,MAAM,aAAa,CAAA;AAWpB,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtC,mBAAmB;AACnB,MAAM,aAAa,GASf,EAAE,CAAA;AAEN;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAC3D,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1C,IAAI,CAAC,GAAG,EAAE;YACR,YAAY,EAAE;gBACZ,MAAM,EAAE,MAAM;aACf;SACF,CAAC,CACH,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACjD,MAAM,KAAK,GAAU;YACnB,GAAG,MAAM;YACT,GAAG,MAAM,CAAC,QAAQ;YAClB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS;YAC/B,OAAO,EAAE;gBACP,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;gBAC1C,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;aAC1C;SACF,CAAA;QACD,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,KAAK;YACL,SAAS,EAAE,SAAS,EAAc;YAClC,SAAS,EAAE,QAAQ,CAAC;gBAClB,UAAU,EAAE;gBACZ,WAAW,EAAE;gBACb,OAAO,EAAE;gBACT,GAAG,kBAAkB;aACtB,CAAC;YACF,eAAe,EAAE,MAAM;SACxB,CAAC;aACC,MAAM,CAAC,aAAa,CAAC;aACrB,MAAM,CAAC,aAAa,CAAC,CAAA;QACxB,aAAa,CAAC,OAAO,CAAC,GAAG,MAAM,CAAA;IACjC,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;AAC/B,CAAC,CAAA"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { config } from '../config.js';
|
|
2
|
+
import { LiFiErrorCode } from '../errors/constants.js';
|
|
3
|
+
import { ProviderError } from '../errors/errors.js';
|
|
2
4
|
import { executionState } from './executionState.js';
|
|
3
5
|
import { prepareRestart } from './prepareRestart.js';
|
|
4
6
|
/**
|
|
@@ -82,7 +84,7 @@ const executeSteps = async (route) => {
|
|
|
82
84
|
.get()
|
|
83
85
|
.providers.find((provider) => provider.isAddress(fromAddress));
|
|
84
86
|
if (!provider) {
|
|
85
|
-
throw new
|
|
87
|
+
throw new ProviderError(LiFiErrorCode.ProviderUnavailable, 'SDK Execution Provider not found.');
|
|
86
88
|
}
|
|
87
89
|
const stepExecutor = await provider.getStepExecutor({
|
|
88
90
|
routeId: route.id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../core/execution.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"execution.js","sourceRoot":"","sources":["../../core/execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAGpD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,KAAY,EACZ,gBAAmC,EACX,EAAE;IAC1B,qCAAqC;IACrC,MAAM,WAAW,GAAG,eAAe,CAAQ,KAAK,CAAC,CAAA;IAEjD,IAAI,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,OAAO,CAAA;IAClE,oCAAoC;IACpC,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAED,cAAc,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAA;IAC/D,gBAAgB,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;IAC5C,cAAc,CAAC,MAAM,CAAC;QACpB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,gBAAgB;KAC1B,CAAC,CAAA;IAEF,OAAO,gBAAgB,CAAA;AACzB,CAAC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,KAAY,EACZ,gBAAmC,EACX,EAAE;IAC1B,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAE9C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAC9C,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,CACvC,CAAA;QACD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,+DAA+D;YAC/D,oBAAoB,CAAC,KAAK,EAAE;gBAC1B,mBAAmB,EAAE,gBAAgB,EAAE,mBAAmB;aAC3D,CAAC,CAAA;YACF,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;gBACvB,8DAA8D;gBAC9D,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;YACvD,CAAC;YACD,OAAO,SAAS,CAAC,OAAO,CAAA;QAC1B,CAAC;IACH,CAAC;IAED,MAAM,cAAc,CAAC,KAAK,CAAC,CAAA;IAE3B,OAAO,YAAY,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;AAC9C,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,KAAK,EAAE,KAAoB,EAA0B,EAAE;IAC1E,mCAAmC;IACnC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACxD,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC9C,iDAAiD;QACjD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAK;QACP,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC/B,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QAC3C,oCAAoC;QACpC,EAAE;QACF,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;YACtC,SAAQ;QACV,CAAC;QAED,oIAAoI;QACpI,IAAI,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAA;YACxD,IAAI,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBAC/B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU;oBACrC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAA;YACnC,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAA;YAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;YACzD,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM;iBACpB,GAAG,EAAE;iBACL,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAA;YAEhE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,aAAa,CACrB,aAAa,CAAC,mBAAmB,EACjC,mCAAmC,CACpC,CAAA;YACH,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC;gBAClD,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;aAC7C,CAAC,CAAA;YACF,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;YAEtC,0DAA0D;YAC1D,IAAI,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBAC/B,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA;YACzD,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YAEzD,0GAA0G;YAC1G,IAAI,YAAY,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC9C,kBAAkB,CAAC,KAAK,CAAC,CAAA;YAC3B,CAAC;YAED,6GAA6G;YAC7G,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;gBACjC,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kBAAkB,CAAC,KAAK,CAAC,CAAA;YACzB,MAAM,CAAC,CAAA;QACT,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/B,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,KAAY,EACZ,OAAyB,EACnB,EAAE;IACR,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAM;IACR,CAAC;IAED,IAAI,qBAAqB,IAAI,OAAO,EAAE,CAAC;QACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;YAC3C,QAAQ,CAAC,cAAc,CAAC;gBACtB,gBAAgB,EAAE,CAAC,OAAO,EAAE,mBAAmB;gBAC/C,YAAY,EAAE,IAAI;aACnB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACD,iFAAiF;IACjF,SAAS,CAAC,gBAAgB,GAAG;QAC3B,GAAG,SAAS,CAAC,gBAAgB;QAC7B,GAAG,OAAO;KACX,CAAA;AACH,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAY,EAAS,EAAE;IACxD,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;QAC3C,QAAQ,CAAC,cAAc,CAAC;YACtB,gBAAgB,EAAE,KAAK;YACvB,YAAY,EAAE,KAAK;YACnB,cAAc,EAAE,KAAK;SACtB,CAAC,CAAA;IACJ,CAAC;IACD,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/B,OAAO,SAAS,CAAC,KAAK,CAAA;AACxB,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,GAAoB,EAAE;IACnD,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC;SACvC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAoB,CAAA;AACvC,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAe,EAA6B,EAAE;IAC3E,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,KAAK,CAAA;AAC3C,CAAC,CAAA"}
|
package/src/_esm/version.js
CHANGED
|
@@ -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,EAEN,IAAI,EAIL,MAAM,MAAM,CAAA;
|
|
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,EAEN,IAAI,EAIL,MAAM,MAAM,CAAA;AAiBb,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EACV,gBAAgB,EAChB,OAAO,EACP,mBAAmB,EAEpB,MAAM,aAAa,CAAA;AAcpB,OAAO,KAAK,EAAQ,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAS7D,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,2EAQzB;QACD,IAAI,EAAE,gBAAgB,CAAA;QACtB,OAAO,EAAE,OAAO,CAAA;QAChB,SAAS,EAAE,aAAa,CAAA;QACxB,OAAO,EAAE,aAAa,CAAA;QACtB,MAAM,EAAE,qBAAqB,CAAA;QAC7B,MAAM,EAAE,IAAI,CAAA;QACZ,iBAAiB,EAAE,OAAO,CAAA;KAC3B,mBA0DA;IAED,WAAW,GACT,MAAM,gBAAgB,EAEtB,2BAAyB,KACxB,OAAO,CAAC,gBAAgB,CAAC,CA4c3B;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/checkAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,KAAK,EAAW,MAAM,EAAQ,MAAM,MAAM,CAAA;AAIjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAwB,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"checkAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/checkAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,KAAK,EAAW,MAAM,EAAQ,MAAM,MAAM,CAAA;AAIjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAwB,MAAM,aAAa,CAAA;AAQzE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAGtC,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,aAAa,CAAA;IACpB,IAAI,EAAE,QAAQ,CAAA;IACd,aAAa,EAAE,aAAa,CAAA;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,eAAe,GACvB;IACE,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAAA;CACnC,GACD;IACE,MAAM,EAAE,gBAAgB,CAAA;IACxB,IAAI,EAAE,IAAI,CAAA;CACX,GACD;IACE,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,eAAe,CAAA;CACtB,CAAA;AAEL,eAAO,MAAM,cAAc,GAAU,6IAUlC,oBAAoB,KAAG,OAAO,CAAC,eAAe,CA6IhD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkPermitSupport.d.ts","sourceRoot":"","sources":["../../../core/EVM/checkPermitSupport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAQnC,MAAM,MAAM,aAAa,GAAG;IAC1B,yDAAyD;IACzD,qBAAqB,EAAE,OAAO,CAAA;IAC9B,gEAAgE;IAChE,0BAA0B,EAAE,OAAO,CAAA;CACpC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,GAAU,gDAKtC;IACD,KAAK,EAAE,aAAa,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,YAAY,EAAE,OAAO,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;CACf,KAAG,OAAO,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"checkPermitSupport.d.ts","sourceRoot":"","sources":["../../../core/EVM/checkPermitSupport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAQnC,MAAM,MAAM,aAAa,GAAG;IAC1B,yDAAyD;IACzD,qBAAqB,EAAE,OAAO,CAAA;IAC9B,gEAAgE;IAChE,0BAA0B,EAAE,OAAO,CAAA;CACpC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,GAAU,gDAKtC;IACD,KAAK,EAAE,aAAa,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,YAAY,EAAE,OAAO,CAAA;IACrB,MAAM,EAAE,MAAM,CAAA;CACf,KAAG,OAAO,CAAC,aAAa,CAqCxB,CAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Account, Chain, Client, PublicActions, RpcSchema, Transport, WalletActions } from 'viem';
|
|
2
|
+
/**
|
|
3
|
+
* Executes an action with a fallback to public client if the wallet client fails due to rate limiting
|
|
4
|
+
* or similar recoverable errors.
|
|
5
|
+
*
|
|
6
|
+
* Note: Only falls back to public client if the initial client was a wallet client (has an account address).
|
|
7
|
+
* If the initial client was already a public client, no fallback will occur.
|
|
8
|
+
*
|
|
9
|
+
* @param walletClient - The wallet client to use primarily
|
|
10
|
+
* @param action - The function or method to execute
|
|
11
|
+
* @param actionName - The name of the action (used for error handling)
|
|
12
|
+
* @param params - The parameters for the action
|
|
13
|
+
* @returns The result of the action
|
|
14
|
+
*/
|
|
15
|
+
export declare const getActionWithFallback: <transport extends Transport, chain extends Chain | undefined, account extends Account | undefined, rpcSchema extends RpcSchema | undefined, extended extends {
|
|
16
|
+
[key: string]: unknown;
|
|
17
|
+
}, client extends Client<transport, chain, account, rpcSchema, extended>, parameters, returnType>(walletClient: client, actionFn: (_: client, parameters: parameters) => returnType, name: keyof PublicActions | keyof WalletActions | (string & {}), params: parameters) => Promise<Awaited<returnType>>;
|
|
18
|
+
//# sourceMappingURL=getActionWithFallback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getActionWithFallback.d.ts","sourceRoot":"","sources":["../../../core/EVM/getActionWithFallback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,MAAM,EACN,aAAa,EACb,SAAS,EACT,SAAS,EACT,aAAa,EACd,MAAM,MAAM,CAAA;AAIb;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB,GAChC,SAAS,SAAS,SAAS,EAC3B,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,OAAO,SAAS,OAAO,GAAG,SAAS,EACnC,SAAS,SAAS,SAAS,GAAG,SAAS,EACvC,QAAQ,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAC3C,MAAM,SAAS,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,EACrE,UAAU,EACV,UAAU,EAEV,cAAc,MAAM,EACpB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,KAAK,UAAU,EAC3D,MAAM,MAAM,aAAa,GAAG,MAAM,aAAa,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAC/D,QAAQ,UAAU,KACjB,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAkB7B,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { BaseToken, ChainId } from '@lifi/types';
|
|
2
|
-
import type { Address } from 'viem';
|
|
2
|
+
import type { Address, Client } from 'viem';
|
|
3
3
|
import type { TokenAllowance, TokenSpender, TokenSpenderAllowance } from './types.js';
|
|
4
|
-
export declare const getAllowance: (
|
|
5
|
-
export declare const getAllowanceMulticall: (chainId: ChainId, tokens: TokenSpender[], ownerAddress: Address) => Promise<TokenSpenderAllowance[]>;
|
|
4
|
+
export declare const getAllowance: (client: Client, tokenAddress: Address, ownerAddress: Address, spenderAddress: Address) => Promise<bigint>;
|
|
5
|
+
export declare const getAllowanceMulticall: (client: Client, chainId: ChainId, tokens: TokenSpender[], ownerAddress: Address) => Promise<TokenSpenderAllowance[]>;
|
|
6
6
|
/**
|
|
7
7
|
* Get the current allowance for a certain token.
|
|
8
8
|
* @param token - The token that should be checked
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/getAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"getAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/getAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAM3C,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAGnB,eAAO,MAAM,YAAY,GACvB,QAAQ,MAAM,EACd,cAAc,OAAO,EACrB,cAAc,OAAO,EACrB,gBAAgB,OAAO,KACtB,OAAO,CAAC,MAAM,CAiBhB,CAAA;AAED,eAAO,MAAM,qBAAqB,GAChC,QAAQ,MAAM,EACd,SAAS,OAAO,EAChB,QAAQ,YAAY,EAAE,EACtB,cAAc,OAAO,KACpB,OAAO,CAAC,qBAAqB,EAAE,CAgCjC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,SAAS,EAChB,cAAc,OAAO,EACrB,gBAAgB,OAAO,KACtB,OAAO,CAAC,MAAM,GAAG,SAAS,CAe5B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,GACrC,cAAc,OAAO,EACrB,QAAQ,YAAY,EAAE,KACrB,OAAO,CAAC,cAAc,EAAE,CAiC1B,CAAA"}
|
|
@@ -2,4 +2,5 @@ import type { LiFiStep } from '@lifi/types';
|
|
|
2
2
|
import { SDKError } from '../../errors/SDKError.js';
|
|
3
3
|
import type { Process } from '../types.js';
|
|
4
4
|
export declare const parseEVMErrors: (e: Error, step?: LiFiStep, process?: Process) => Promise<SDKError>;
|
|
5
|
+
export declare const isAtomicReadyWalletRejectedUpgradeError: (e: any) => any;
|
|
5
6
|
//# sourceMappingURL=parseEVMErrors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseEVMErrors.d.ts","sourceRoot":"","sources":["../../../core/EVM/parseEVMErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"parseEVMErrors.d.ts","sourceRoot":"","sources":["../../../core/EVM/parseEVMErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAKnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE1C,eAAO,MAAM,cAAc,GACzB,GAAG,KAAK,EACR,OAAO,QAAQ,EACf,UAAU,OAAO,KAChB,OAAO,CAAC,QAAQ,CAUlB,CAAA;AAiED,eAAO,MAAM,uCAAuC,GAAI,GAAG,GAAG,QAY7D,CAAA"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type { Address, Client } from 'viem';
|
|
2
2
|
import type { NativePermitData } from './types.js';
|
|
3
|
+
export type GetNativePermitParams = {
|
|
4
|
+
chainId: number;
|
|
5
|
+
tokenAddress: Address;
|
|
6
|
+
spenderAddress: Address;
|
|
7
|
+
amount: bigint;
|
|
8
|
+
};
|
|
3
9
|
/**
|
|
4
10
|
* Retrieves native permit data (EIP-2612) for a token on a specific chain
|
|
5
11
|
* @link https://eips.ethereum.org/EIPS/eip-2612
|
|
@@ -8,5 +14,5 @@ import type { NativePermitData } from './types.js';
|
|
|
8
14
|
* @param tokenAddress - The address of the token to check for permit support
|
|
9
15
|
* @returns {Promise<NativePermitData>} Object containing permit data including name, version, nonce and support status
|
|
10
16
|
*/
|
|
11
|
-
export declare const getNativePermit: (client: Client, chainId
|
|
17
|
+
export declare const getNativePermit: (client: Client, { chainId, tokenAddress, spenderAddress, amount }: GetNativePermitParams) => Promise<NativePermitData | undefined>;
|
|
12
18
|
//# sourceMappingURL=getNativePermit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNativePermit.d.ts","sourceRoot":"","sources":["../../../../core/EVM/permits/getNativePermit.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAO,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"getNativePermit.d.ts","sourceRoot":"","sources":["../../../../core/EVM/permits/getNativePermit.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAO,MAAM,MAAM,CAAA;AAMhD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAwBlD,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;IACrB,cAAc,EAAE,OAAO,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAqGD;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,EACd,mDAAmD,qBAAqB,KACvE,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAmItC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPermitTransferFromValues.d.ts","sourceRoot":"","sources":["../../../../core/EVM/permits/getPermitTransferFromValues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"getPermitTransferFromValues.d.ts","sourceRoot":"","sources":["../../../../core/EVM/permits/getPermitTransferFromValues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAI3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAEhE,eAAO,MAAM,2BAA2B,GACtC,QAAQ,MAAM,EACd,OAAO,aAAa,EACpB,cAAc,OAAO,EACrB,QAAQ,MAAM,KACb,OAAO,CAAC,kBAAkB,CAsB5B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAe,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAe,MAAM,MAAM,CAAA;AAgB/D,eAAO,MAAM,oBAAoB,GAAI,OAAO,aAAa,KAAG,KAuB1D,CAAA;AAEF,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,aAAa,CAclE;AAED,eAAO,MAAM,uBAAuB,GAClC,QAAQ,MAAM,KACb,OAAO,CAAC,MAAM,GAAG,SAAS,CA0B5B,CAAA;AAGD,eAAO,MAAM,mBAAmB,GAC9B,SAAS,OAAO,KACf,OAAO,CAAC,OAAO,GAAG,SAAS,CAI7B,CAAA;AAGD,eAAO,MAAM,UAAU,GAAI,WAAW;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,WAC/B,CAAA;AAEtC,eAAO,MAAM,UAAU,KAAK,CAAA"}
|
|
@@ -34,5 +34,26 @@ export declare const getUTXOPublicClient: (chainId: number) => Promise<Client<Fa
|
|
|
34
34
|
address: string;
|
|
35
35
|
};
|
|
36
36
|
ReturnType: bigint;
|
|
37
|
+
}, {
|
|
38
|
+
Method: "getTransactions";
|
|
39
|
+
Parameters: {
|
|
40
|
+
address: string;
|
|
41
|
+
offset?: number;
|
|
42
|
+
limit?: number;
|
|
43
|
+
lastBlock?: string;
|
|
44
|
+
afterTxId?: string;
|
|
45
|
+
};
|
|
46
|
+
ReturnType: {
|
|
47
|
+
transactions: Array<Partial<import("@bigmi/core").UTXOTransaction>>;
|
|
48
|
+
total: number;
|
|
49
|
+
hasMore?: boolean;
|
|
50
|
+
};
|
|
51
|
+
}, {
|
|
52
|
+
Method: "getUTXOs";
|
|
53
|
+
Parameters: {
|
|
54
|
+
address: string;
|
|
55
|
+
minValue?: number;
|
|
56
|
+
};
|
|
57
|
+
ReturnType: Array<import("@bigmi/core/dist/esm/types/transaction.js").UTXO>;
|
|
37
58
|
}], PublicActions & WalletActions>>;
|
|
38
59
|
//# sourceMappingURL=getUTXOPublicClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUTXOPublicClient.d.ts","sourceRoot":"","sources":["../../../core/UTXO/getUTXOPublicClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getUTXOPublicClient.d.ts","sourceRoot":"","sources":["../../../core/UTXO/getUTXOPublicClient.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,MAAM,EACN,iBAAiB,EACjB,aAAa,EACb,aAAa,EAEb,aAAa,EACd,MAAM,aAAa,CAAA;AAmBpB;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAU,SAAS,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAbrD,CAAJ;aAA2B,CAAC;iBAExB,CAAJ;iBACM,CAAC;;;;;eAO6B,CAAA;;;;;;gBAGwB,CAAC;;;mCAyC5D,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../core/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAMxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAEjE;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GACvB,OAAO,KAAK,EACZ,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAkBvB,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GACtB,OAAO,KAAK,EACZ,mBAAmB,gBAAgB,KAClC,OAAO,CAAC,aAAa,CAuBvB,CAAA;AA8ED;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,KAAK,EACZ,SAAS,gBAAgB,KACxB,IAmBF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,KAAK,KAAG,KAejD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,QAAO,aAAa,EAI/C,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,aAAa,GAAG,SAEhE,CAAA"}
|
package/src/_types/version.d.ts
CHANGED
|
@@ -8,7 +8,6 @@ import type {
|
|
|
8
8
|
SendTransactionParameters,
|
|
9
9
|
TransactionReceipt,
|
|
10
10
|
} from 'viem'
|
|
11
|
-
import { AtomicReadyWalletRejectedUpgradeError } from 'viem'
|
|
12
11
|
import {
|
|
13
12
|
estimateGas,
|
|
14
13
|
getAddresses,
|
|
@@ -36,8 +35,12 @@ import type {
|
|
|
36
35
|
} from '../types.js'
|
|
37
36
|
import { waitForDestinationChainTransaction } from '../waitForDestinationChainTransaction.js'
|
|
38
37
|
import { checkAllowance } from './checkAllowance.js'
|
|
38
|
+
import { getActionWithFallback } from './getActionWithFallback.js'
|
|
39
39
|
import { isBatchingSupported } from './isBatchingSupported.js'
|
|
40
|
-
import {
|
|
40
|
+
import {
|
|
41
|
+
isAtomicReadyWalletRejectedUpgradeError,
|
|
42
|
+
parseEVMErrors,
|
|
43
|
+
} from './parseEVMErrors.js'
|
|
41
44
|
import { encodeNativePermitData } from './permits/encodeNativePermitData.js'
|
|
42
45
|
import { encodePermit2Data } from './permits/encodePermit2Data.js'
|
|
43
46
|
import { signPermit2Message } from './permits/signPermit2Message.js'
|
|
@@ -567,12 +570,17 @@ export class EVMStepExecutor extends BaseStepExecutor {
|
|
|
567
570
|
transactionRequest.to = fromChain.permit2Proxy
|
|
568
571
|
try {
|
|
569
572
|
// Try to re-estimate the gas due to additional Permit data
|
|
570
|
-
const estimatedGas = await
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
573
|
+
const estimatedGas = await getActionWithFallback(
|
|
574
|
+
this.client,
|
|
575
|
+
estimateGas,
|
|
576
|
+
'estimateGas',
|
|
577
|
+
{
|
|
578
|
+
account: this.client.account!,
|
|
579
|
+
to: transactionRequest.to as Address,
|
|
580
|
+
data: transactionRequest.data as Hex,
|
|
581
|
+
value: transactionRequest.value,
|
|
582
|
+
}
|
|
583
|
+
)
|
|
576
584
|
transactionRequest.gas =
|
|
577
585
|
transactionRequest.gas && transactionRequest.gas > estimatedGas
|
|
578
586
|
? transactionRequest.gas
|
|
@@ -634,7 +642,7 @@ export class EVMStepExecutor extends BaseStepExecutor {
|
|
|
634
642
|
return step
|
|
635
643
|
} catch (e: any) {
|
|
636
644
|
// If the wallet rejected the upgrade to 7702 account, we need to try again with the standard flow
|
|
637
|
-
if (e
|
|
645
|
+
if (isAtomicReadyWalletRejectedUpgradeError(e) && !atomicityNotReady) {
|
|
638
646
|
step.execution = undefined
|
|
639
647
|
return this.executeStep(step, true)
|
|
640
648
|
}
|
|
@@ -5,6 +5,7 @@ import { getAction } from 'viem/utils'
|
|
|
5
5
|
import { MaxUint256 } from '../../constants.js'
|
|
6
6
|
import type { StatusManager } from '../StatusManager.js'
|
|
7
7
|
import type { ExecutionOptions, Process, ProcessType } from '../types.js'
|
|
8
|
+
import { getActionWithFallback } from './getActionWithFallback.js'
|
|
8
9
|
import { getAllowance } from './getAllowance.js'
|
|
9
10
|
import { parseEVMErrors } from './parseEVMErrors.js'
|
|
10
11
|
import { getNativePermit } from './permits/getNativePermit.js'
|
|
@@ -81,7 +82,7 @@ export const checkAllowance = async ({
|
|
|
81
82
|
const fromAmount = BigInt(step.action.fromAmount)
|
|
82
83
|
|
|
83
84
|
const approved = await getAllowance(
|
|
84
|
-
|
|
85
|
+
client,
|
|
85
86
|
step.action.fromToken.address as Address,
|
|
86
87
|
client.account!.address,
|
|
87
88
|
spenderAddress as Address
|
|
@@ -105,12 +106,16 @@ export const checkAllowance = async ({
|
|
|
105
106
|
(p) => p.primaryType === 'Permit'
|
|
106
107
|
) as NativePermitData
|
|
107
108
|
} else if (isNativePermitAvailable) {
|
|
108
|
-
nativePermitData = await
|
|
109
|
+
nativePermitData = await getActionWithFallback(
|
|
109
110
|
client,
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
getNativePermit,
|
|
112
|
+
'getNativePermit',
|
|
113
|
+
{
|
|
114
|
+
chainId: chain.id,
|
|
115
|
+
tokenAddress: step.action.fromToken.address as Address,
|
|
116
|
+
spenderAddress: chain.permit2Proxy as Address,
|
|
117
|
+
amount: fromAmount,
|
|
118
|
+
}
|
|
114
119
|
)
|
|
115
120
|
}
|
|
116
121
|
|
|
@@ -2,9 +2,9 @@ import type { ExtendedChain } from '@lifi/types'
|
|
|
2
2
|
import { ChainType } from '@lifi/types'
|
|
3
3
|
import type { Address } from 'viem'
|
|
4
4
|
import { config } from '../../config.js'
|
|
5
|
+
import { getActionWithFallback } from './getActionWithFallback.js'
|
|
5
6
|
import { getAllowance } from './getAllowance.js'
|
|
6
7
|
import { getNativePermit } from './permits/getNativePermit.js'
|
|
7
|
-
import type { NativePermitData } from './permits/types.js'
|
|
8
8
|
import { getPublicClient } from './publicClient.js'
|
|
9
9
|
import type { EVMProvider } from './types.js'
|
|
10
10
|
|
|
@@ -46,32 +46,23 @@ export const checkPermitSupport = async ({
|
|
|
46
46
|
client = await getPublicClient(chain.id)
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
chain.id,
|
|
55
|
-
tokenAddress,
|
|
56
|
-
chain.permit2Proxy as Address,
|
|
57
|
-
amount
|
|
58
|
-
)
|
|
59
|
-
} catch {
|
|
60
|
-
client = await getPublicClient(chain.id)
|
|
61
|
-
nativePermit = await getNativePermit(
|
|
62
|
-
client,
|
|
63
|
-
chain.id,
|
|
49
|
+
const nativePermit = await getActionWithFallback(
|
|
50
|
+
client,
|
|
51
|
+
getNativePermit,
|
|
52
|
+
'getNativePermit',
|
|
53
|
+
{
|
|
54
|
+
chainId: chain.id,
|
|
64
55
|
tokenAddress,
|
|
65
|
-
chain.permit2Proxy as Address,
|
|
66
|
-
amount
|
|
67
|
-
|
|
68
|
-
|
|
56
|
+
spenderAddress: chain.permit2Proxy as Address,
|
|
57
|
+
amount,
|
|
58
|
+
}
|
|
59
|
+
)
|
|
69
60
|
|
|
70
61
|
let permit2Allowance: bigint | undefined
|
|
71
62
|
// Check Permit2 allowance if available on chain
|
|
72
63
|
if (chain.permit2) {
|
|
73
64
|
permit2Allowance = await getAllowance(
|
|
74
|
-
|
|
65
|
+
client,
|
|
75
66
|
tokenAddress,
|
|
76
67
|
ownerAddress,
|
|
77
68
|
chain.permit2 as Address
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type {
|
|
2
|
+
Account,
|
|
3
|
+
Chain,
|
|
4
|
+
Client,
|
|
5
|
+
PublicActions,
|
|
6
|
+
RpcSchema,
|
|
7
|
+
Transport,
|
|
8
|
+
WalletActions,
|
|
9
|
+
} from 'viem'
|
|
10
|
+
import { getAction } from 'viem/utils'
|
|
11
|
+
import { getPublicClient } from './publicClient.js'
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Executes an action with a fallback to public client if the wallet client fails due to rate limiting
|
|
15
|
+
* or similar recoverable errors.
|
|
16
|
+
*
|
|
17
|
+
* Note: Only falls back to public client if the initial client was a wallet client (has an account address).
|
|
18
|
+
* If the initial client was already a public client, no fallback will occur.
|
|
19
|
+
*
|
|
20
|
+
* @param walletClient - The wallet client to use primarily
|
|
21
|
+
* @param action - The function or method to execute
|
|
22
|
+
* @param actionName - The name of the action (used for error handling)
|
|
23
|
+
* @param params - The parameters for the action
|
|
24
|
+
* @returns The result of the action
|
|
25
|
+
*/
|
|
26
|
+
export const getActionWithFallback = async <
|
|
27
|
+
transport extends Transport,
|
|
28
|
+
chain extends Chain | undefined,
|
|
29
|
+
account extends Account | undefined,
|
|
30
|
+
rpcSchema extends RpcSchema | undefined,
|
|
31
|
+
extended extends { [key: string]: unknown },
|
|
32
|
+
client extends Client<transport, chain, account, rpcSchema, extended>,
|
|
33
|
+
parameters,
|
|
34
|
+
returnType,
|
|
35
|
+
>(
|
|
36
|
+
walletClient: client,
|
|
37
|
+
actionFn: (_: client, parameters: parameters) => returnType,
|
|
38
|
+
name: keyof PublicActions | keyof WalletActions | (string & {}),
|
|
39
|
+
params: parameters
|
|
40
|
+
): Promise<Awaited<returnType>> => {
|
|
41
|
+
try {
|
|
42
|
+
return await getAction(walletClient, actionFn, name)(params)
|
|
43
|
+
} catch (error: unknown) {
|
|
44
|
+
// Only fall back if this was a wallet client (has an account address)
|
|
45
|
+
// If it was already a public client, we don't want to fall back
|
|
46
|
+
if (!walletClient.account?.address) {
|
|
47
|
+
throw error
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const chainId = walletClient.chain?.id
|
|
51
|
+
if (!chainId) {
|
|
52
|
+
throw error
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const publicClient = await getPublicClient(chainId)
|
|
56
|
+
return await getAction(publicClient, actionFn, name)(params)
|
|
57
|
+
}
|
|
58
|
+
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { BaseToken, ChainId } from '@lifi/types'
|
|
2
|
-
import type { Address } from 'viem'
|
|
2
|
+
import type { Address, Client } from 'viem'
|
|
3
3
|
import { multicall, readContract } from 'viem/actions'
|
|
4
4
|
import { isNativeTokenAddress } from '../../utils/isZeroAddress.js'
|
|
5
5
|
import { allowanceAbi } from './abi.js'
|
|
6
|
+
import { getActionWithFallback } from './getActionWithFallback.js'
|
|
6
7
|
import { getPublicClient } from './publicClient.js'
|
|
7
8
|
import type {
|
|
8
9
|
TokenAllowance,
|
|
@@ -12,19 +13,23 @@ import type {
|
|
|
12
13
|
import { getMulticallAddress } from './utils.js'
|
|
13
14
|
|
|
14
15
|
export const getAllowance = async (
|
|
15
|
-
|
|
16
|
+
client: Client,
|
|
16
17
|
tokenAddress: Address,
|
|
17
18
|
ownerAddress: Address,
|
|
18
19
|
spenderAddress: Address
|
|
19
20
|
): Promise<bigint> => {
|
|
20
|
-
const client = await getPublicClient(chainId)
|
|
21
21
|
try {
|
|
22
|
-
const approved =
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
22
|
+
const approved = await getActionWithFallback(
|
|
23
|
+
client,
|
|
24
|
+
readContract,
|
|
25
|
+
'readContract',
|
|
26
|
+
{
|
|
27
|
+
address: tokenAddress as Address,
|
|
28
|
+
abi: allowanceAbi,
|
|
29
|
+
functionName: 'allowance' as const,
|
|
30
|
+
args: [ownerAddress, spenderAddress] as const,
|
|
31
|
+
}
|
|
32
|
+
)
|
|
28
33
|
return approved
|
|
29
34
|
} catch (_e) {
|
|
30
35
|
return 0n
|
|
@@ -32,6 +37,7 @@ export const getAllowance = async (
|
|
|
32
37
|
}
|
|
33
38
|
|
|
34
39
|
export const getAllowanceMulticall = async (
|
|
40
|
+
client: Client,
|
|
35
41
|
chainId: ChainId,
|
|
36
42
|
tokens: TokenSpender[],
|
|
37
43
|
ownerAddress: Address
|
|
@@ -44,8 +50,6 @@ export const getAllowanceMulticall = async (
|
|
|
44
50
|
throw new Error(`No multicall address configured for chainId ${chainId}.`)
|
|
45
51
|
}
|
|
46
52
|
|
|
47
|
-
const client = await getPublicClient(chainId)
|
|
48
|
-
|
|
49
53
|
const contracts = tokens.map((token) => ({
|
|
50
54
|
address: token.token.address as Address,
|
|
51
55
|
abi: allowanceAbi,
|
|
@@ -53,7 +57,7 @@ export const getAllowanceMulticall = async (
|
|
|
53
57
|
args: [ownerAddress, token.spenderAddress],
|
|
54
58
|
}))
|
|
55
59
|
|
|
56
|
-
const results = await
|
|
60
|
+
const results = await getActionWithFallback(client, multicall, 'multicall', {
|
|
57
61
|
contracts,
|
|
58
62
|
multicallAddress: multicallAddress as Address,
|
|
59
63
|
})
|
|
@@ -88,8 +92,10 @@ export const getTokenAllowance = async (
|
|
|
88
92
|
return
|
|
89
93
|
}
|
|
90
94
|
|
|
95
|
+
const client = await getPublicClient(token.chainId)
|
|
96
|
+
|
|
91
97
|
const approved = await getAllowance(
|
|
92
|
-
|
|
98
|
+
client,
|
|
93
99
|
token.address as Address,
|
|
94
100
|
ownerAddress,
|
|
95
101
|
spenderAddress
|
|
@@ -126,8 +132,10 @@ export const getTokenAllowanceMulticall = async (
|
|
|
126
132
|
const allowances = (
|
|
127
133
|
await Promise.all(
|
|
128
134
|
chainKeys.map(async (chainId) => {
|
|
135
|
+
const client = await getPublicClient(chainId)
|
|
129
136
|
// get allowances for current chain and token list
|
|
130
137
|
return getAllowanceMulticall(
|
|
138
|
+
client,
|
|
131
139
|
chainId,
|
|
132
140
|
tokenDataByChain[chainId],
|
|
133
141
|
ownerAddress
|