@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.
Files changed (86) hide show
  1. package/package.json +6 -6
  2. package/src/_cjs/core/EVM/EVMStepExecutor.js +3 -3
  3. package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -1
  4. package/src/_cjs/core/EVM/checkAllowance.js +8 -2
  5. package/src/_cjs/core/EVM/checkAllowance.js.map +1 -1
  6. package/src/_cjs/core/EVM/checkPermitSupport.js +8 -9
  7. package/src/_cjs/core/EVM/checkPermitSupport.js.map +1 -1
  8. package/src/_cjs/core/EVM/getActionWithFallback.js +23 -0
  9. package/src/_cjs/core/EVM/getActionWithFallback.js.map +1 -0
  10. package/src/_cjs/core/EVM/getAllowance.js +10 -9
  11. package/src/_cjs/core/EVM/getAllowance.js.map +1 -1
  12. package/src/_cjs/core/EVM/getEVMBalance.js +11 -8
  13. package/src/_cjs/core/EVM/getEVMBalance.js.map +1 -1
  14. package/src/_cjs/core/EVM/parseEVMErrors.js +13 -1
  15. package/src/_cjs/core/EVM/parseEVMErrors.js.map +1 -1
  16. package/src/_cjs/core/EVM/permits/getNativePermit.js +4 -3
  17. package/src/_cjs/core/EVM/permits/getNativePermit.js.map +1 -1
  18. package/src/_cjs/core/EVM/permits/getPermitTransferFromValues.js +2 -1
  19. package/src/_cjs/core/EVM/permits/getPermitTransferFromValues.js.map +1 -1
  20. package/src/_cjs/core/EVM/setAllowance.js +2 -2
  21. package/src/_cjs/core/EVM/setAllowance.js.map +1 -1
  22. package/src/_cjs/core/EVM/utils.js +2 -1
  23. package/src/_cjs/core/EVM/utils.js.map +1 -1
  24. package/src/_cjs/core/UTXO/getUTXOPublicClient.js +6 -13
  25. package/src/_cjs/core/UTXO/getUTXOPublicClient.js.map +1 -1
  26. package/src/_cjs/core/execution.js +3 -1
  27. package/src/_cjs/core/execution.js.map +1 -1
  28. package/src/_cjs/version.js +1 -1
  29. package/src/_esm/core/EVM/EVMStepExecutor.js +4 -4
  30. package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -1
  31. package/src/_esm/core/EVM/checkAllowance.js +8 -2
  32. package/src/_esm/core/EVM/checkAllowance.js.map +1 -1
  33. package/src/_esm/core/EVM/checkPermitSupport.js +8 -10
  34. package/src/_esm/core/EVM/checkPermitSupport.js.map +1 -1
  35. package/src/_esm/core/EVM/getActionWithFallback.js +34 -0
  36. package/src/_esm/core/EVM/getActionWithFallback.js.map +1 -0
  37. package/src/_esm/core/EVM/getAllowance.js +10 -9
  38. package/src/_esm/core/EVM/getAllowance.js.map +1 -1
  39. package/src/_esm/core/EVM/getEVMBalance.js +11 -8
  40. package/src/_esm/core/EVM/getEVMBalance.js.map +1 -1
  41. package/src/_esm/core/EVM/parseEVMErrors.js +11 -0
  42. package/src/_esm/core/EVM/parseEVMErrors.js.map +1 -1
  43. package/src/_esm/core/EVM/permits/getNativePermit.js +4 -3
  44. package/src/_esm/core/EVM/permits/getNativePermit.js.map +1 -1
  45. package/src/_esm/core/EVM/permits/getPermitTransferFromValues.js +2 -1
  46. package/src/_esm/core/EVM/permits/getPermitTransferFromValues.js.map +1 -1
  47. package/src/_esm/core/EVM/setAllowance.js +2 -2
  48. package/src/_esm/core/EVM/setAllowance.js.map +1 -1
  49. package/src/_esm/core/EVM/utils.js +2 -1
  50. package/src/_esm/core/EVM/utils.js.map +1 -1
  51. package/src/_esm/core/UTXO/getUTXOPublicClient.js +7 -14
  52. package/src/_esm/core/UTXO/getUTXOPublicClient.js.map +1 -1
  53. package/src/_esm/core/execution.js +3 -1
  54. package/src/_esm/core/execution.js.map +1 -1
  55. package/src/_esm/version.js +1 -1
  56. package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -1
  57. package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -1
  58. package/src/_types/core/EVM/checkPermitSupport.d.ts.map +1 -1
  59. package/src/_types/core/EVM/getActionWithFallback.d.ts +18 -0
  60. package/src/_types/core/EVM/getActionWithFallback.d.ts.map +1 -0
  61. package/src/_types/core/EVM/getAllowance.d.ts +3 -3
  62. package/src/_types/core/EVM/getAllowance.d.ts.map +1 -1
  63. package/src/_types/core/EVM/parseEVMErrors.d.ts +1 -0
  64. package/src/_types/core/EVM/parseEVMErrors.d.ts.map +1 -1
  65. package/src/_types/core/EVM/permits/getNativePermit.d.ts +7 -1
  66. package/src/_types/core/EVM/permits/getNativePermit.d.ts.map +1 -1
  67. package/src/_types/core/EVM/permits/getPermitTransferFromValues.d.ts.map +1 -1
  68. package/src/_types/core/EVM/utils.d.ts.map +1 -1
  69. package/src/_types/core/UTXO/getUTXOPublicClient.d.ts +21 -0
  70. package/src/_types/core/UTXO/getUTXOPublicClient.d.ts.map +1 -1
  71. package/src/_types/core/execution.d.ts.map +1 -1
  72. package/src/_types/version.d.ts +1 -1
  73. package/src/core/EVM/EVMStepExecutor.ts +17 -9
  74. package/src/core/EVM/checkAllowance.ts +11 -6
  75. package/src/core/EVM/checkPermitSupport.ts +12 -21
  76. package/src/core/EVM/getActionWithFallback.ts +58 -0
  77. package/src/core/EVM/getAllowance.ts +21 -13
  78. package/src/core/EVM/getEVMBalance.ts +13 -8
  79. package/src/core/EVM/parseEVMErrors.ts +15 -0
  80. package/src/core/EVM/permits/getNativePermit.ts +13 -6
  81. package/src/core/EVM/permits/getPermitTransferFromValues.ts +12 -6
  82. package/src/core/EVM/setAllowance.ts +2 -2
  83. package/src/core/EVM/utils.ts +2 -1
  84. package/src/core/UTXO/getUTXOPublicClient.ts +6 -14
  85. package/src/core/execution.ts +6 -1
  86. 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(token.chainId, token.address, walletClient.account.address, spenderAddress);
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(token.chainId, token.address, walletClient.account.address, spenderAddress);
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":"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"}
1
+ {"version":3,"file":"setAllowance.js","sourceRoot":"","sources":["../../../core/EVM/setAllowance.ts"],"names":[],"mappings":"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"}
@@ -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 getBlock(client, {
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":"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"}
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, utxo, walletActions, } from '@bigmi/core';
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
- utxo('https://api.blockchair.com', {
34
- key: 'blockchair',
35
- includeChainToURL: true,
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,IAAI,EACJ,aAAa,GACd,MAAM,aAAa,CAAA;AAWpB,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,IAAI,CAAC,4BAA4B,EAAE;oBACjC,GAAG,EAAE,YAAY;oBACjB,iBAAiB,EAAE,IAAI;iBACxB,CAAC;gBACF,IAAI,CAAC,yCAAyC,EAAE;oBAC9C,GAAG,EAAE,aAAa;iBACnB,CAAC;gBACF,IAAI,CAAC,2BAA2B,EAAE;oBAChC,GAAG,EAAE,SAAS;iBACf,CAAC;gBACF,IAAI,CAAC,gDAAgD,EAAE;oBACrD,GAAG,EAAE,MAAM;iBACZ,CAAC;gBACF,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
+ {"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 Error('SDK Execution Provider not found.');
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":"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"}
@@ -1,3 +1,3 @@
1
1
  export const name = '@lifi/sdk';
2
- export const version = '3.7.2';
2
+ export const version = '3.7.4';
3
3
  //# sourceMappingURL=version.js.map
@@ -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;AAkBb,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EACV,gBAAgB,EAChB,OAAO,EACP,mBAAmB,EAEpB,MAAM,aAAa,CAAA;AAUpB,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,CAuc3B;CACF"}
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;AAOzE,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,CAyIhD,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,CA8CxB,CAAA"}
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: (chainId: ChainId, tokenAddress: Address, ownerAddress: Address, spenderAddress: Address) => Promise<bigint>;
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;AAKnC,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAGnB,eAAO,MAAM,YAAY,GACvB,SAAS,OAAO,EAChB,cAAc,OAAO,EACrB,cAAc,OAAO,EACrB,gBAAgB,OAAO,KACtB,OAAO,CAAC,MAAM,CAahB,CAAA;AAED,eAAO,MAAM,qBAAqB,GAChC,SAAS,OAAO,EAChB,QAAQ,YAAY,EAAE,EACtB,cAAc,OAAO,KACpB,OAAO,CAAC,qBAAqB,EAAE,CAkCjC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,SAAS,EAChB,cAAc,OAAO,EACrB,gBAAgB,OAAO,KACtB,OAAO,CAAC,MAAM,GAAG,SAAS,CAa5B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,GACrC,cAAc,OAAO,EACrB,QAAQ,YAAY,EAAE,KACrB,OAAO,CAAC,cAAc,EAAE,CA+B1B,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;AAC3C,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"}
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: number, tokenAddress: Address, spenderAddress: Address, amount: bigint) => Promise<NativePermitData | undefined>;
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;AAKhD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AA2HlD;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,EACd,SAAS,MAAM,EACf,cAAc,OAAO,EACrB,gBAAgB,OAAO,EACvB,QAAQ,MAAM,KACb,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAiItC,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;AAG3C,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,CAiB5B,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;AAe/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"}
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":"AASA,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,MAAM,EACN,iBAAiB,EACjB,aAAa,EACb,aAAa,EAEb,aAAa,EACd,MAAM,aAAa,CAAA;AAgBpB;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAU,SAAS,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAmDxD,CAAA"}
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;AAIxC,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;AA2ED;;;;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"}
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"}
@@ -1,3 +1,3 @@
1
1
  export declare const name = "@lifi/sdk";
2
- export declare const version = "3.7.2";
2
+ export declare const version = "3.7.4";
3
3
  //# sourceMappingURL=version.d.ts.map
@@ -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 { parseEVMErrors } from './parseEVMErrors.js'
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 estimateGas(this.client, {
571
- account: this.client.account!,
572
- to: transactionRequest.to as Address,
573
- data: transactionRequest.data as Hex,
574
- value: transactionRequest.value,
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.cause?.code === AtomicReadyWalletRejectedUpgradeError.code) {
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
- chain.id,
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 getNativePermit(
109
+ nativePermitData = await getActionWithFallback(
109
110
  client,
110
- chain.id,
111
- step.action.fromToken.address as Address,
112
- chain.permit2Proxy as Address,
113
- fromAmount
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
- let nativePermit: NativePermitData | undefined
50
- // Try with wallet client first, fallback to public client
51
- try {
52
- nativePermit = await getNativePermit(
53
- client,
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
- chain.id,
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
- chainId: ChainId,
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 = (await readContract(client, {
23
- address: tokenAddress as Address,
24
- abi: allowanceAbi,
25
- functionName: 'allowance',
26
- args: [ownerAddress, spenderAddress],
27
- })) as bigint
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 multicall(client, {
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
- token.chainId,
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