@lifi/sdk 3.4.1 → 3.5.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/package.json +7 -7
  2. package/src/_cjs/constants.js +4 -2
  3. package/src/_cjs/constants.js.map +1 -1
  4. package/src/_cjs/core/EVM/EVM.js +0 -4
  5. package/src/_cjs/core/EVM/EVM.js.map +1 -1
  6. package/src/_cjs/core/EVM/EVMStepExecutor.js +96 -74
  7. package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -1
  8. package/src/_cjs/core/EVM/abi.js +36 -43
  9. package/src/_cjs/core/EVM/abi.js.map +1 -1
  10. package/src/_cjs/core/EVM/checkAllowance.js +36 -30
  11. package/src/_cjs/core/EVM/checkAllowance.js.map +1 -1
  12. package/src/_cjs/core/EVM/getAllowance.js.map +1 -1
  13. package/src/_cjs/core/EVM/getEVMBalance.js.map +1 -1
  14. package/src/_cjs/core/EVM/getNativePermit.js +90 -0
  15. package/src/_cjs/core/EVM/getNativePermit.js.map +1 -0
  16. package/src/_cjs/core/EVM/parseEVMErrors.js +3 -0
  17. package/src/_cjs/core/EVM/parseEVMErrors.js.map +1 -1
  18. package/src/_cjs/core/EVM/permit2/allowanceTransfer.js +100 -0
  19. package/src/_cjs/core/EVM/permit2/allowanceTransfer.js.map +1 -0
  20. package/src/_cjs/core/EVM/permit2/constants.js +12 -0
  21. package/src/_cjs/core/EVM/permit2/constants.js.map +1 -0
  22. package/src/_cjs/core/EVM/permit2/domain.js +12 -0
  23. package/src/_cjs/core/EVM/permit2/domain.js.map +1 -0
  24. package/src/_cjs/core/EVM/permit2/signatureTransfer.js +121 -0
  25. package/src/_cjs/core/EVM/permit2/signatureTransfer.js.map +1 -0
  26. package/src/_cjs/core/EVM/setAllowance.js +3 -4
  27. package/src/_cjs/core/EVM/setAllowance.js.map +1 -1
  28. package/src/_cjs/core/EVM/signPermitMessage.js +168 -0
  29. package/src/_cjs/core/EVM/signPermitMessage.js.map +1 -0
  30. package/src/_cjs/core/EVM/types.js.map +1 -1
  31. package/src/_cjs/core/EVM/utils.js +2 -1
  32. package/src/_cjs/core/EVM/utils.js.map +1 -1
  33. package/src/_cjs/core/EVM/waitForBatchTransactionReceipt.js +29 -0
  34. package/src/_cjs/core/EVM/waitForBatchTransactionReceipt.js.map +1 -0
  35. package/src/_cjs/core/checkBalance.js +3 -3
  36. package/src/_cjs/core/checkBalance.js.map +1 -1
  37. package/src/_cjs/index.js.map +1 -1
  38. package/src/_cjs/utils/invariant.js +17 -0
  39. package/src/_cjs/utils/invariant.js.map +1 -0
  40. package/src/_cjs/version.js +1 -1
  41. package/src/_cjs/version.js.map +1 -1
  42. package/src/_esm/constants.js +3 -1
  43. package/src/_esm/constants.js.map +1 -1
  44. package/src/_esm/core/EVM/EVM.js +0 -4
  45. package/src/_esm/core/EVM/EVM.js.map +1 -1
  46. package/src/_esm/core/EVM/EVMStepExecutor.js +124 -84
  47. package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -1
  48. package/src/_esm/core/EVM/abi.js +37 -42
  49. package/src/_esm/core/EVM/abi.js.map +1 -1
  50. package/src/_esm/core/EVM/checkAllowance.js +41 -32
  51. package/src/_esm/core/EVM/checkAllowance.js.map +1 -1
  52. package/src/_esm/core/EVM/getAllowance.js.map +1 -1
  53. package/src/_esm/core/EVM/getEVMBalance.js.map +1 -1
  54. package/src/_esm/core/EVM/getNativePermit.js +95 -0
  55. package/src/_esm/core/EVM/getNativePermit.js.map +1 -0
  56. package/src/_esm/core/EVM/parseEVMErrors.js +8 -0
  57. package/src/_esm/core/EVM/parseEVMErrors.js.map +1 -1
  58. package/src/_esm/core/EVM/permit2/allowanceTransfer.js +93 -0
  59. package/src/_esm/core/EVM/permit2/allowanceTransfer.js.map +1 -0
  60. package/src/_esm/core/EVM/permit2/constants.js +9 -0
  61. package/src/_esm/core/EVM/permit2/constants.js.map +1 -0
  62. package/src/_esm/core/EVM/permit2/domain.js +9 -0
  63. package/src/_esm/core/EVM/permit2/domain.js.map +1 -0
  64. package/src/_esm/core/EVM/permit2/signatureTransfer.js +117 -0
  65. package/src/_esm/core/EVM/permit2/signatureTransfer.js.map +1 -0
  66. package/src/_esm/core/EVM/setAllowance.js +3 -4
  67. package/src/_esm/core/EVM/setAllowance.js.map +1 -1
  68. package/src/_esm/core/EVM/signPermitMessage.js +162 -0
  69. package/src/_esm/core/EVM/signPermitMessage.js.map +1 -0
  70. package/src/_esm/core/EVM/types.js.map +1 -1
  71. package/src/_esm/core/EVM/utils.js +2 -1
  72. package/src/_esm/core/EVM/utils.js.map +1 -1
  73. package/src/_esm/core/EVM/waitForBatchTransactionReceipt.js +25 -0
  74. package/src/_esm/core/EVM/waitForBatchTransactionReceipt.js.map +1 -0
  75. package/src/_esm/core/checkBalance.js +3 -3
  76. package/src/_esm/core/checkBalance.js.map +1 -1
  77. package/src/_esm/index.js.map +1 -1
  78. package/src/_esm/utils/invariant.js +43 -0
  79. package/src/_esm/utils/invariant.js.map +1 -0
  80. package/src/_esm/version.js +1 -1
  81. package/src/_esm/version.js.map +1 -1
  82. package/src/_types/config.d.ts.map +1 -1
  83. package/src/_types/constants.d.ts +3 -1
  84. package/src/_types/constants.d.ts.map +1 -1
  85. package/src/_types/core/EVM/EVM.d.ts.map +1 -1
  86. package/src/_types/core/EVM/EVMStepExecutor.d.ts +7 -4
  87. package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -1
  88. package/src/_types/core/EVM/abi.d.ts +202 -5
  89. package/src/_types/core/EVM/abi.d.ts.map +1 -1
  90. package/src/_types/core/EVM/checkAllowance.d.ts +12 -2
  91. package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -1
  92. package/src/_types/core/EVM/getAllowance.d.ts +5 -4
  93. package/src/_types/core/EVM/getAllowance.d.ts.map +1 -1
  94. package/src/_types/core/EVM/getEVMBalance.d.ts +2 -1
  95. package/src/_types/core/EVM/getEVMBalance.d.ts.map +1 -1
  96. package/src/_types/core/EVM/getNativePermit.d.ts +18 -0
  97. package/src/_types/core/EVM/getNativePermit.d.ts.map +1 -0
  98. package/src/_types/core/EVM/permit2/allowanceTransfer.d.ts +41 -0
  99. package/src/_types/core/EVM/permit2/allowanceTransfer.d.ts.map +1 -0
  100. package/src/_types/core/EVM/permit2/constants.d.ts +8 -0
  101. package/src/_types/core/EVM/permit2/constants.d.ts.map +1 -0
  102. package/src/_types/core/EVM/permit2/domain.d.ts +8 -0
  103. package/src/_types/core/EVM/permit2/domain.d.ts.map +1 -0
  104. package/src/_types/core/EVM/permit2/signatureTransfer.d.ts +42 -0
  105. package/src/_types/core/EVM/permit2/signatureTransfer.d.ts.map +1 -0
  106. package/src/_types/core/EVM/setAllowance.d.ts +2 -2
  107. package/src/_types/core/EVM/setAllowance.d.ts.map +1 -1
  108. package/src/_types/core/EVM/signPermitMessage.d.ts +22 -0
  109. package/src/_types/core/EVM/signPermitMessage.d.ts.map +1 -0
  110. package/src/_types/core/EVM/types.d.ts +1 -18
  111. package/src/_types/core/EVM/types.d.ts.map +1 -1
  112. package/src/_types/core/EVM/utils.d.ts +2 -2
  113. package/src/_types/core/EVM/utils.d.ts.map +1 -1
  114. package/src/_types/core/EVM/waitForBatchTransactionReceipt.d.ts +4 -0
  115. package/src/_types/core/EVM/waitForBatchTransactionReceipt.d.ts.map +1 -0
  116. package/src/_types/core/checkBalance.d.ts.map +1 -1
  117. package/src/_types/index.d.ts +1 -1
  118. package/src/_types/index.d.ts.map +1 -1
  119. package/src/_types/utils/base64ToUint8Array.d.ts +1 -1
  120. package/src/_types/utils/base64ToUint8Array.d.ts.map +1 -1
  121. package/src/_types/utils/invariant.d.ts +22 -0
  122. package/src/_types/utils/invariant.d.ts.map +1 -0
  123. package/src/_types/version.d.ts +1 -1
  124. package/src/_types/version.d.ts.map +1 -1
  125. package/src/constants.ts +6 -1
  126. package/src/core/EVM/EVM.ts +0 -4
  127. package/src/core/EVM/EVMStepExecutor.ts +177 -134
  128. package/src/core/EVM/abi.ts +40 -43
  129. package/src/core/EVM/checkAllowance.ts +96 -92
  130. package/src/core/EVM/getAllowance.ts +8 -8
  131. package/src/core/EVM/getEVMBalance.ts +2 -2
  132. package/src/core/EVM/getNativePermit.ts +113 -0
  133. package/src/core/EVM/parseEVMErrors.ts +8 -0
  134. package/src/core/EVM/permit2/allowanceTransfer.ts +168 -0
  135. package/src/core/EVM/permit2/constants.ts +11 -0
  136. package/src/core/EVM/permit2/domain.ts +20 -0
  137. package/src/core/EVM/permit2/signatureTransfer.ts +214 -0
  138. package/src/core/EVM/setAllowance.ts +14 -15
  139. package/src/core/EVM/signPermitMessage.ts +248 -0
  140. package/src/core/EVM/types.ts +1 -27
  141. package/src/core/EVM/utils.ts +4 -3
  142. package/src/core/EVM/waitForBatchTransactionReceipt.ts +49 -0
  143. package/src/core/checkBalance.ts +6 -3
  144. package/src/index.ts +0 -3
  145. package/src/utils/invariant.ts +51 -0
  146. package/src/version.ts +1 -1
  147. package/src/_cjs/core/EVM/multisig.js +0 -29
  148. package/src/_cjs/core/EVM/multisig.js.map +0 -1
  149. package/src/_esm/core/EVM/multisig.js +0 -25
  150. package/src/_esm/core/EVM/multisig.js.map +0 -1
  151. package/src/_types/core/EVM/multisig.d.ts +0 -6
  152. package/src/_types/core/EVM/multisig.d.ts.map +0 -1
  153. package/src/core/EVM/multisig.ts +0 -54
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../core/EVM/types.ts"],"names":[],"mappings":";;AAgBA,sBAEC;AAlBD,uCAAuD;AAgBvD,SAAgB,KAAK,CAAC,QAAqB;IACzC,OAAO,QAAQ,CAAC,IAAI,KAAK,iBAAS,CAAC,GAAG,CAAA;AACxC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../core/EVM/types.ts"],"names":[],"mappings":";;AAcA,sBAEC;AAhBD,uCAAuD;AAcvD,SAAgB,KAAK,CAAC,QAAqB;IACzC,OAAO,QAAQ,CAAC,IAAI,KAAK,iBAAS,CAAC,GAAG,CAAA;AACxC,CAAC"}
@@ -27,7 +27,8 @@ const getMaxPriorityFeePerGas = async (client) => {
27
27
  exports.getMaxPriorityFeePerGas = getMaxPriorityFeePerGas;
28
28
  const getMulticallAddress = async (chainId) => {
29
29
  const chains = await config_js_1.config.getChains();
30
- return chains.find((chain) => chain.id === chainId)?.multicallAddress;
30
+ return chains.find((chain) => chain.id === chainId)
31
+ ?.multicallAddress;
31
32
  };
32
33
  exports.getMulticallAddress = getMulticallAddress;
33
34
  const retryDelay = ({ count }) => Math.min(~~(1 << count) * 200, 3000);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":";;;AAEA,0CAAuC;AACvC,+CAAwC;AACxC,qDAA8C;AAEvC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,MAAc,EACe,EAAE;IAC/B,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAQ,EAAC,MAAM,EAAE;QACnC,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,MAAM,wBAAwB,GAAI,KAAK,CAAC,YAA8B;SACnE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC;SACvC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAa,CAAA;IAEnD,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC;QACrC,OAAM;IACR,CAAC;IAED,IAAI,uBAAuB,GAAG,EAAE,CAAA;IAChC,KAAK,MAAM,KAAK,IAAI,wBAAwB,EAAE,CAAC;QAC7C,uBAAuB,IAAI,KAAK,CAAA;IAClC,CAAC;IAED,MAAM,0BAA0B,GAAG,IAAA,kBAAM,EAAC,wBAAwB,CAAC,IAAI,EAAE,CAAA;IAEzE,MAAM,uBAAuB,GAC3B,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;IAEnE,OAAO,0BAA0B,GAAG,uBAAuB;QACzD,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,0BAA0B,CAAA;AAChC,CAAC,CAAA;AA5BY,QAAA,uBAAuB,2BA4BnC;AAGM,MAAM,mBAAmB,GAAG,KAAK,EACtC,OAAgB,EACa,EAAE;IAC/B,MAAM,MAAM,GAAG,MAAM,kBAAM,CAAC,SAAS,EAAE,CAAA;IACvC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,gBAAgB,CAAA;AACvE,CAAC,CAAA;AALY,QAAA,mBAAmB,uBAK/B;AAGM,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAmC,EAAE,EAAE,CACvE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC,CAAA;AADzB,QAAA,UAAU,cACe;AAEzB,QAAA,UAAU,GAAG,EAAE,CAAA"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":";;;AAEA,0CAAuC;AACvC,+CAAwC;AACxC,qDAA8C;AAEvC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,MAAc,EACe,EAAE;IAC/B,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAQ,EAAC,MAAM,EAAE;QACnC,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,MAAM,wBAAwB,GAAI,KAAK,CAAC,YAA8B;SACnE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC;SACvC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAa,CAAA;IAEnD,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC;QACrC,OAAM;IACR,CAAC;IAED,IAAI,uBAAuB,GAAG,EAAE,CAAA;IAChC,KAAK,MAAM,KAAK,IAAI,wBAAwB,EAAE,CAAC;QAC7C,uBAAuB,IAAI,KAAK,CAAA;IAClC,CAAC;IAED,MAAM,0BAA0B,GAAG,IAAA,kBAAM,EAAC,wBAAwB,CAAC,IAAI,EAAE,CAAA;IAEzE,MAAM,uBAAuB,GAC3B,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;IAEnE,OAAO,0BAA0B,GAAG,uBAAuB;QACzD,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,0BAA0B,CAAA;AAChC,CAAC,CAAA;AA5BY,QAAA,uBAAuB,2BA4BnC;AAGM,MAAM,mBAAmB,GAAG,KAAK,EACtC,OAAgB,EACc,EAAE;IAChC,MAAM,MAAM,GAAG,MAAM,kBAAM,CAAC,SAAS,EAAE,CAAA;IACvC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC;QACjD,EAAE,gBAA2B,CAAA;AACjC,CAAC,CAAA;AANY,QAAA,mBAAmB,uBAM/B;AAGM,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAmC,EAAE,EAAE,CACvE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,EAAE,IAAI,CAAC,CAAA;AADzB,QAAA,UAAU,cACe;AAEzB,QAAA,UAAU,GAAG,EAAE,CAAA"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitForBatchTransactionReceipt = void 0;
4
+ const experimental_1 = require("viem/experimental");
5
+ const constants_js_1 = require("../../errors/constants.js");
6
+ const errors_js_1 = require("../../errors/errors.js");
7
+ const waitForResult_js_1 = require("../../utils/waitForResult.js");
8
+ const waitForBatchTransactionReceipt = async (client, batchHash) => {
9
+ return (0, waitForResult_js_1.waitForResult)(async () => {
10
+ const callsDetails = await (0, experimental_1.getCallsStatus)(client, {
11
+ id: batchHash,
12
+ });
13
+ if (callsDetails.status === 'PENDING') {
14
+ return undefined;
15
+ }
16
+ if (callsDetails.status === 'CONFIRMED') {
17
+ if (!callsDetails.receipts?.length ||
18
+ !callsDetails.receipts.every((receipt) => receipt.transactionHash) ||
19
+ callsDetails.receipts.some((receipt) => receipt.status === 'reverted')) {
20
+ throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionFailed, 'Transaction was reverted.');
21
+ }
22
+ const transactionReceipt = callsDetails.receipts.at(-1);
23
+ return transactionReceipt;
24
+ }
25
+ throw new errors_js_1.TransactionError(constants_js_1.LiFiErrorCode.TransactionFailed, 'Transaction not found.');
26
+ }, 3000);
27
+ };
28
+ exports.waitForBatchTransactionReceipt = waitForBatchTransactionReceipt;
29
+ //# sourceMappingURL=waitForBatchTransactionReceipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForBatchTransactionReceipt.js","sourceRoot":"","sources":["../../../core/EVM/waitForBatchTransactionReceipt.ts"],"names":[],"mappings":";;;AAKA,oDAAkD;AAClD,4DAAyD;AACzD,sDAAyD;AACzD,mEAA4D;AAOrD,MAAM,8BAA8B,GAAG,KAAK,EACjD,MAAc,EACd,SAAe,EACa,EAAE;IAC9B,OAAO,IAAA,gCAAa,EAAC,KAAK,IAAI,EAAE;QAC9B,MAAM,YAAY,GAAG,MAAM,IAAA,6BAAc,EAAC,MAAM,EAAE;YAChD,EAAE,EAAE,SAAS;SACd,CAAC,CAAA;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACxC,IACE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM;gBAC9B,CAAC,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC;gBAClE,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,EACtE,CAAC;gBACD,MAAM,IAAI,4BAAgB,CACxB,4BAAa,CAAC,iBAAiB,EAC/B,2BAA2B,CAC5B,CAAA;YACH,CAAC;YACD,MAAM,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;YACxD,OAAO,kBAAkB,CAAA;QAC3B,CAAC;QAED,MAAM,IAAI,4BAAgB,CACxB,4BAAa,CAAC,iBAAiB,EAC/B,wBAAwB,CACzB,CAAA;IACH,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC,CAAA;AAjCY,QAAA,8BAA8B,kCAiC1C"}
@@ -23,11 +23,11 @@ const checkBalance = async (walletAddress, step, depth = 0) => {
23
23
  else {
24
24
  const neeeded = (0, viem_1.formatUnits)(neededBalance, token.decimals);
25
25
  const current = (0, viem_1.formatUnits)(currentBalance, token.decimals);
26
- let _errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${neeeded} ${token.symbol}, but your wallet only holds ${current} ${token.symbol}. No funds have been sent.`;
26
+ let errorMessage = `Your ${token.symbol} balance is too low, you try to transfer ${neeeded} ${token.symbol}, but your wallet only holds ${current} ${token.symbol}. No funds have been sent.`;
27
27
  if (currentBalance !== 0n) {
28
- _errorMessage += `If the problem consists, please delete this transfer and start a new one with a maximum of ${current} ${token.symbol}.`;
28
+ errorMessage += `If the problem consists, please delete this transfer and start a new one with a maximum of ${current} ${token.symbol}.`;
29
29
  }
30
- throw new errors_js_1.BalanceError('The balance is too low.');
30
+ throw new errors_js_1.BalanceError('The balance is too low.', new Error(errorMessage));
31
31
  }
32
32
  }
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"checkBalance.js","sourceRoot":"","sources":["../../core/checkBalance.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAClC,mDAAkD;AAClD,uDAAwD;AACxD,gDAAyC;AAElC,MAAM,YAAY,GAAG,KAAK,EAC/B,aAAqB,EACrB,IAAc,EACd,KAAK,GAAG,CAAC,EACM,EAAE;IACjB,MAAM,KAAK,GAAG,MAAM,IAAA,4BAAe,EAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACzE,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;QACzC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,cAAc,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAA;gBAChB,MAAM,IAAA,oBAAY,EAAC,aAAa,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YACpD,CAAC;iBAAM,IACL,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,CAAC;gBAClE,WAAc;gBAChB,cAAc,EACd,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAA;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,IAAA,kBAAW,EAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC1D,MAAM,OAAO,GAAG,IAAA,kBAAW,EAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC3D,IAAI,aAAa,GAAG,QAAQ,KAAK,CAAC,MAAM,4CAA4C,OAAO,IAAI,KAAK,CAAC,MAAM,gCAAgC,OAAO,IAAI,KAAK,CAAC,MAAM,4BAA4B,CAAA;gBAE9L,IAAI,cAAc,KAAK,EAAE,EAAE,CAAC;oBAC1B,aAAa,IAAI,8FAA8F,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAA;gBAC3I,CAAC;gBAED,MAAM,IAAI,wBAAY,CAAC,yBAAyB,CAAC,CAAA;YACnD,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAlCY,QAAA,YAAY,gBAkCxB"}
1
+ {"version":3,"file":"checkBalance.js","sourceRoot":"","sources":["../../core/checkBalance.ts"],"names":[],"mappings":";;;AACA,+BAAkC;AAClC,mDAAkD;AAClD,uDAAwD;AACxD,gDAAyC;AAElC,MAAM,YAAY,GAAG,KAAK,EAC/B,aAAqB,EACrB,IAAc,EACd,KAAK,GAAG,CAAC,EACM,EAAE;IACjB,MAAM,KAAK,GAAG,MAAM,IAAA,4BAAe,EAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACzE,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;QACzC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEpD,IAAI,cAAc,GAAG,aAAa,EAAE,CAAC;YACnC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,MAAM,IAAA,gBAAK,EAAC,GAAG,CAAC,CAAA;gBAChB,MAAM,IAAA,oBAAY,EAAC,aAAa,EAAE,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;YACpD,CAAC;iBAAM,IACL,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,CAAC;gBAClE,WAAc;gBAChB,cAAc,EACd,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAA;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,IAAA,kBAAW,EAAC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC1D,MAAM,OAAO,GAAG,IAAA,kBAAW,EAAC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC3D,IAAI,YAAY,GAAG,QAAQ,KAAK,CAAC,MAAM,4CAA4C,OAAO,IAAI,KAAK,CAAC,MAAM,gCAAgC,OAAO,IAAI,KAAK,CAAC,MAAM,4BAA4B,CAAA;gBAE7L,IAAI,cAAc,KAAK,EAAE,EAAE,CAAC;oBAC1B,YAAY,IAAI,8FAA8F,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAA;gBAC1I,CAAC;gBAED,MAAM,IAAI,wBAAY,CACpB,yBAAyB,EACzB,IAAI,KAAK,CAAC,YAAY,CAAC,CACxB,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AArCY,QAAA,YAAY,gBAqCxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,8CAA2B;AAC3B,yCAAoC;AAA3B,mGAAA,MAAM,OAAA;AACf,4CAAuC;AAA9B,6FAAA,GAAG,OAAA;AACZ,8DAGmC;AAFjC,oHAAA,iBAAiB,OAAA;AACjB,6HAAA,0BAA0B,OAAA;AAE5B,8DAGmC;AAFjC,sHAAA,mBAAmB,OAAA;AACnB,oHAAA,iBAAiB,OAAA;AAEnB,gDAA2C;AAAlC,iGAAA,KAAK,OAAA;AAQd,4DAAuD;AAA9C,iHAAA,aAAa,OAAA;AACtB,oDAO4B;AAN1B,4GAAA,YAAY,OAAA;AACZ,8GAAA,cAAc,OAAA;AACd,+GAAA,eAAe,OAAA;AACf,2GAAA,WAAW,OAAA;AACX,kHAAA,kBAAkB,OAAA;AAClB,oHAAA,oBAAoB,OAAA;AAwBtB,iEAA4D;AAAnD,+GAAA,YAAY,OAAA;AACrB,iFAG8C;AAF5C,+HAAA,oBAAoB,OAAA;AACpB,4HAAA,iBAAiB,OAAA;AAEnB,qDAAgD;AAAvC,mGAAA,MAAM,OAAA;AACf,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AAKjB,+CAA0C;AAAjC,+FAAA,IAAI,OAAA;AACb,iDAA6C;AAApC,kGAAA,MAAM,OAAA;AAEf,qDAAgD;AAAvC,+GAAA,YAAY,OAAA;AACrB,2CAIqB;AAHnB,iHAAA,mBAAmB,OAAA;AACnB,iHAAA,mBAAmB,OAAA;AACnB,iHAAA,mBAAmB,OAAA;AAErB,4CAa0B;AAZxB,mGAAA,SAAS,OAAA;AACT,wGAAA,cAAc,OAAA;AACd,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,mGAAA,SAAS,OAAA;AACT,4GAAA,kBAAkB,OAAA;AAClB,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,kGAAA,QAAQ,OAAA;AACR,+GAAA,qBAAqB,OAAA;AAEvB,oDAI8B;AAH5B,6GAAA,eAAe,OAAA;AACf,8GAAA,gBAAgB,OAAA;AAChB,qHAAA,uBAAuB,OAAA;AAEzB,gFAA2E;AAAlE,iIAAA,qBAAqB,OAAA;AAE9B,sDAAiD;AAAxC,yGAAA,SAAS,OAAA;AAClB,sDAI8B;AAH5B,4GAAA,YAAY,OAAA;AACZ,yGAAA,SAAS,OAAA;AACT,6GAAA,aAAa,OAAA;AAGf,gDAQ2B;AAPzB,yGAAA,YAAY,OAAA;AACZ,0GAAA,aAAa,OAAA;AACb,qGAAA,QAAQ,OAAA;AACR,wGAAA,WAAW,OAAA;AACX,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AACZ,4GAAA,eAAe,OAAA;AAEjB,sDAAiD;AAAxC,yGAAA,SAAS,OAAA;AAClB,oDAA+C;AAAtC,uGAAA,QAAQ,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,8CAA2B;AAC3B,yCAAoC;AAA3B,mGAAA,MAAM,OAAA;AACf,4CAAuC;AAA9B,6FAAA,GAAG,OAAA;AACZ,8DAGmC;AAFjC,oHAAA,iBAAiB,OAAA;AACjB,6HAAA,0BAA0B,OAAA;AAE5B,8DAGmC;AAFjC,sHAAA,mBAAmB,OAAA;AACnB,oHAAA,iBAAiB,OAAA;AAEnB,gDAA2C;AAAlC,iGAAA,KAAK,OAAA;AAKd,4DAAuD;AAA9C,iHAAA,aAAa,OAAA;AACtB,oDAO4B;AAN1B,4GAAA,YAAY,OAAA;AACZ,8GAAA,cAAc,OAAA;AACd,+GAAA,eAAe,OAAA;AACf,2GAAA,WAAW,OAAA;AACX,kHAAA,kBAAkB,OAAA;AAClB,oHAAA,oBAAoB,OAAA;AAwBtB,iEAA4D;AAAnD,+GAAA,YAAY,OAAA;AACrB,iFAG8C;AAF5C,+HAAA,oBAAoB,OAAA;AACpB,4HAAA,iBAAiB,OAAA;AAEnB,qDAAgD;AAAvC,mGAAA,MAAM,OAAA;AACf,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AAKjB,+CAA0C;AAAjC,+FAAA,IAAI,OAAA;AACb,iDAA6C;AAApC,kGAAA,MAAM,OAAA;AAEf,qDAAgD;AAAvC,+GAAA,YAAY,OAAA;AACrB,2CAIqB;AAHnB,iHAAA,mBAAmB,OAAA;AACnB,iHAAA,mBAAmB,OAAA;AACnB,iHAAA,mBAAmB,OAAA;AAErB,4CAa0B;AAZxB,mGAAA,SAAS,OAAA;AACT,wGAAA,cAAc,OAAA;AACd,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,mGAAA,SAAS,OAAA;AACT,4GAAA,kBAAkB,OAAA;AAClB,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,kGAAA,QAAQ,OAAA;AACR,+GAAA,qBAAqB,OAAA;AAEvB,oDAI8B;AAH5B,6GAAA,eAAe,OAAA;AACf,8GAAA,gBAAgB,OAAA;AAChB,qHAAA,uBAAuB,OAAA;AAEzB,gFAA2E;AAAlE,iIAAA,qBAAqB,OAAA;AAE9B,sDAAiD;AAAxC,yGAAA,SAAS,OAAA;AAClB,sDAI8B;AAH5B,4GAAA,YAAY,OAAA;AACZ,yGAAA,SAAS,OAAA;AACT,6GAAA,aAAa,OAAA;AAGf,gDAQ2B;AAPzB,yGAAA,YAAY,OAAA;AACZ,0GAAA,aAAa,OAAA;AACb,qGAAA,QAAQ,OAAA;AACR,wGAAA,WAAW,OAAA;AACX,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AACZ,4GAAA,eAAe,OAAA;AAEjB,sDAAiD;AAAxC,yGAAA,SAAS,OAAA;AAClB,oDAA+C;AAAtC,uGAAA,QAAQ,OAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.invariant = invariant;
4
+ const isProduction = process.env.NODE_ENV === 'production';
5
+ const prefix = 'Invariant failed';
6
+ function invariant(condition, message) {
7
+ if (condition) {
8
+ return;
9
+ }
10
+ if (isProduction) {
11
+ throw new Error(prefix);
12
+ }
13
+ const provided = typeof message === 'function' ? message() : message;
14
+ const value = provided ? `${prefix}: ${provided}` : prefix;
15
+ throw new Error(value);
16
+ }
17
+ //# sourceMappingURL=invariant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invariant.js","sourceRoot":"","sources":["../../utils/invariant.ts"],"names":[],"mappings":";;AAoBA,8BA8BC;AAhDD,MAAM,YAAY,GAAY,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAA;AACnE,MAAM,MAAM,GAAW,kBAAkB,CAAA;AAiBzC,SAAgB,SAAS,CACvB,SAAc,EAMd,OAAiC;IAEjC,IAAI,SAAS,EAAE,CAAC;QACd,OAAM;IACR,CAAC;IAID,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IACzB,CAAC;IAKD,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;IAKrD,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;IAClE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = exports.name = void 0;
4
4
  exports.name = '@lifi/sdk';
5
- exports.version = '3.4.1';
5
+ exports.version = '3.5.0-beta.0';
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../version.ts"],"names":[],"mappings":";;;AAAa,QAAA,IAAI,GAAG,WAAW,CAAA;AAClB,QAAA,OAAO,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../version.ts"],"names":[],"mappings":";;;AAAa,QAAA,IAAI,GAAG,WAAW,CAAA;AAClB,QAAA,OAAO,GAAG,cAAc,CAAA"}
@@ -1,5 +1,7 @@
1
1
  export const AddressZero = '0x0000000000000000000000000000000000000000';
2
2
  export const AlternativeAddressZero = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
3
- export const wrappedSolAddress = 'So11111111111111111111111111111111111111112';
4
3
  export const SolSystemProgram = '11111111111111111111111111111111';
4
+ export const MaxUint48 = BigInt('0xffffffffffff');
5
+ export const MaxUint160 = BigInt('0xffffffffffffffffffffffffffffffffffffffff');
6
+ export const MaxUint256 = BigInt(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffn);
5
7
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,4CAA4C,CAAA;AACvE,MAAM,CAAC,MAAM,sBAAsB,GACjC,4CAA4C,CAAA;AAC9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,6CAA6C,CAAA;AAC9E,MAAM,CAAC,MAAM,gBAAgB,GAAG,kCAAkC,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,4CAA4C,CAAA;AACvE,MAAM,CAAC,MAAM,sBAAsB,GACjC,4CAA4C,CAAA;AAE9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,kCAAkC,CAAA;AAElE,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAA;AACjD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,4CAA4C,CAAC,CAAA;AAC9E,MAAM,CAAC,MAAM,UAAU,GACrB,MAAM,CAAC,mEAAmE,CAAC,CAAA"}
@@ -9,9 +9,6 @@ export function EVM(options) {
9
9
  get type() {
10
10
  return ChainType.EVM;
11
11
  },
12
- get multisig() {
13
- return _options.multisig;
14
- },
15
12
  isAddress,
16
13
  resolveAddress: getENSAddress,
17
14
  getBalance: getEVMBalance,
@@ -22,7 +19,6 @@ export function EVM(options) {
22
19
  const walletClient = await _options.getWalletClient();
23
20
  const executor = new EVMStepExecutor({
24
21
  client: walletClient,
25
- multisig: _options.multisig,
26
22
  routeId: options.routeId,
27
23
  executionOptions: {
28
24
  ...options.executionOptions,
@@ -1 +1 @@
1
- {"version":3,"file":"EVM.js","sourceRoot":"","sources":["../../../core/EVM/EVM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGlD,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,IAAI,QAAQ;YACV,OAAO,QAAQ,CAAC,QAAQ,CAAA;QAC1B,CAAC;QACD,SAAS;QACT,cAAc,EAAE,aAAa;QAC7B,UAAU,EAAE,aAAa;QACzB,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,eAAe,CAAC;gBACnC,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;oBAC3B,eAAe,EACb,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,eAAe;iBACpE;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"}
1
+ {"version":3,"file":"EVM.js","sourceRoot":"","sources":["../../../core/EVM/EVM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGlD,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;QACT,cAAc,EAAE,aAAa;QAC7B,UAAU,EAAE,aAAa;QACzB,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,eAAe,CAAC;gBACnC,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,gBAAgB,EAAE;oBAChB,GAAG,OAAO,CAAC,gBAAgB;oBAC3B,eAAe,EACb,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,gBAAgB,EAAE,eAAe;iBACpE;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"}
@@ -1,7 +1,8 @@
1
- import { getAddresses, sendTransaction } from 'viem/actions';
1
+ import { estimateGas, getAddresses, sendTransaction } from 'viem/actions';
2
+ import { getCapabilities, sendCalls } from 'viem/experimental';
2
3
  import { config } from '../../config.js';
3
4
  import { LiFiErrorCode } from '../../errors/constants.js';
4
- import { TransactionError, ValidationError } from '../../errors/errors.js';
5
+ import { TransactionError } from '../../errors/errors.js';
5
6
  import { getStepTransaction } from '../../services/api.js';
6
7
  import { getTransactionFailedMessage } from '../../utils/getTransactionMessage.js';
7
8
  import { isZeroAddress } from '../../utils/isZeroAddress.js';
@@ -11,10 +12,12 @@ import { getSubstatusMessage } from '../processMessages.js';
11
12
  import { stepComparison } from '../stepComparison.js';
12
13
  import { waitForReceivingTransaction } from '../waitForReceivingTransaction.js';
13
14
  import { checkAllowance } from './checkAllowance.js';
14
- import { updateMultisigRouteProcess } from './multisig.js';
15
+ import { getNativePermit } from './getNativePermit.js';
15
16
  import { parseEVMErrors } from './parseEVMErrors.js';
17
+ import { signPermitMessage } from './signPermitMessage.js';
16
18
  import { switchChain } from './switchChain.js';
17
19
  import { getMaxPriorityFeePerGas } from './utils.js';
20
+ import { waitForBatchTransactionReceipt, } from './waitForBatchTransactionReceipt.js';
18
21
  import { waitForTransactionReceipt } from './waitForTransactionReceipt.js';
19
22
  export class EVMStepExecutor extends BaseStepExecutor {
20
23
  constructor(options) {
@@ -25,12 +28,6 @@ export class EVMStepExecutor extends BaseStepExecutor {
25
28
  writable: true,
26
29
  value: void 0
27
30
  });
28
- Object.defineProperty(this, "multisig", {
29
- enumerable: true,
30
- configurable: true,
31
- writable: true,
32
- value: void 0
33
- });
34
31
  // Ensure that we are using the right chain and wallet when executing transactions.
35
32
  Object.defineProperty(this, "checkClient", {
36
33
  enumerable: true,
@@ -87,29 +84,66 @@ export class EVMStepExecutor extends BaseStepExecutor {
87
84
  return step;
88
85
  }
89
86
  }
90
- const isMultisigClient = !!this.multisig?.isMultisigWalletClient;
91
- const multisigBatchTransactions = [];
92
- const shouldBatchTransactions = this.multisig?.shouldBatchTransactions &&
93
- !!this.multisig.sendBatchTransaction;
94
87
  const fromChain = await config.getChainById(step.action.fromChainId);
95
88
  const toChain = await config.getChainById(step.action.toChainId);
89
+ let atomicBatchSupported = false;
90
+ try {
91
+ const capabilities = await getCapabilities(this.client);
92
+ atomicBatchSupported = capabilities[fromChain.id]?.atomicBatch?.supported;
93
+ }
94
+ catch {
95
+ // If the wallet does not support getCapabilities, we assume that atomic batch is not supported
96
+ }
97
+ const calls = [];
96
98
  const isBridgeExecution = fromChain.id !== toChain.id;
97
99
  const currentProcessType = isBridgeExecution ? 'CROSS_CHAIN' : 'SWAP';
98
100
  // STEP 1: Check allowance
101
+ // Find existing swap/bridge process
99
102
  const existingProcess = step.execution.process.find((p) => p.type === currentProcessType);
100
- // Check token approval only if fromToken is not the native token => no approval needed in that case
101
- const checkForAllowance = !existingProcess?.txHash &&
103
+ // Check if token requires approval
104
+ // Native tokens (like ETH) don't need approval since they're not ERC20 tokens
105
+ // We should support different permit types:
106
+ // 1. Native permits (EIP-2612)
107
+ // 2. Permit2 - Universal permit implementation by Uniswap (limited to certain chains)
108
+ // 3. Standard ERC20 approval
109
+ const nativePermit = await getNativePermit(this.client, fromChain, step.action.fromToken.address);
110
+ // Check if proxy contract is available and token supports native permits, not available for atomic batch
111
+ const nativePermitSupported = !!fromChain.permit2Proxy &&
112
+ nativePermit.supported &&
113
+ !atomicBatchSupported;
114
+ // Check if chain has Permit2 contract deployed. Permit2 should not be available for atomic batch.
115
+ const permit2Supported = !!fromChain.permit2 && !!fromChain.permit2Proxy && !atomicBatchSupported;
116
+ // Token supports either native permits or Permit2
117
+ const permitSupported = permit2Supported || nativePermitSupported;
118
+ const checkForAllowance =
119
+ // No existing swap/bridgetransaction is pending
120
+ !existingProcess?.txHash &&
121
+ // Token is not native (address is not zero)
102
122
  !isZeroAddress(step.action.fromToken.address) &&
103
- (shouldBatchTransactions || !isMultisigClient);
123
+ // Token doesn't support native permits
124
+ !nativePermitSupported;
104
125
  if (checkForAllowance) {
105
- const data = await checkAllowance(this.client, fromChain, step, this.statusManager, this.executionOptions, this.allowUserInteraction, shouldBatchTransactions);
126
+ // Check if token needs approval and get approval transaction or message data when available
127
+ const data = await checkAllowance({
128
+ client: this.client,
129
+ chain: fromChain,
130
+ step,
131
+ statusManager: this.statusManager,
132
+ executionOptions: this.executionOptions,
133
+ allowUserInteraction: this.allowUserInteraction,
134
+ atomicBatchSupported,
135
+ permit2Supported,
136
+ });
106
137
  if (data) {
107
- // allowance doesn't need value
108
- const baseTransaction = {
109
- to: step.action.fromToken.address,
110
- data,
111
- };
112
- multisigBatchTransactions.push(baseTransaction);
138
+ // Create approval transaction call
139
+ // No value needed since we're only approving ERC20 tokens
140
+ if (atomicBatchSupported) {
141
+ calls.push({
142
+ chainId: step.action.fromToken.chainId,
143
+ to: step.action.fromToken.address,
144
+ data,
145
+ });
146
+ }
113
147
  }
114
148
  }
115
149
  // STEP 2: Get transaction
@@ -119,15 +153,7 @@ export class EVMStepExecutor extends BaseStepExecutor {
119
153
  chainId: fromChain.id,
120
154
  });
121
155
  if (process.status !== 'DONE') {
122
- const multisigProcess = step.execution.process.find((p) => !!p.multisigTxHash);
123
156
  try {
124
- if (isMultisigClient && multisigProcess) {
125
- const multisigTxHash = multisigProcess.multisigTxHash;
126
- if (!multisigTxHash) {
127
- throw new ValidationError('Multisig internal transaction hash is undefined.');
128
- }
129
- await updateMultisigRouteProcess(multisigTxHash, step, process.type, fromChain, this.statusManager, this.multisig);
130
- }
131
157
  let txHash;
132
158
  if (process.txHash) {
133
159
  // Make sure that the chain is still correct
@@ -142,7 +168,7 @@ export class EVMStepExecutor extends BaseStepExecutor {
142
168
  process = this.statusManager.updateProcess(step, process.type, 'STARTED');
143
169
  // Check balance
144
170
  await checkBalance(this.client.account.address, step);
145
- // Create new transaction
171
+ // Create new transaction request
146
172
  if (!step.transactionRequest) {
147
173
  const { execution, ...stepBase } = step;
148
174
  const updatedStep = await getStepTransaction(stepBase);
@@ -155,16 +181,6 @@ export class EVMStepExecutor extends BaseStepExecutor {
155
181
  if (!step.transactionRequest) {
156
182
  throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
157
183
  }
158
- // STEP 3: Send the transaction
159
- // Make sure that the chain is still correct
160
- const updatedClient = await this.checkClient(step, process);
161
- if (!updatedClient) {
162
- return step;
163
- }
164
- process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
165
- if (!this.allowUserInteraction) {
166
- return step;
167
- }
168
184
  let transactionRequest = {
169
185
  to: step.transactionRequest.to,
170
186
  from: step.transactionRequest.from,
@@ -197,21 +213,49 @@ export class EVMStepExecutor extends BaseStepExecutor {
197
213
  ...customizedTransactionRequest,
198
214
  };
199
215
  }
200
- if (shouldBatchTransactions && this.multisig?.sendBatchTransaction) {
201
- if (transactionRequest.to && transactionRequest.data) {
202
- const populatedTransaction = {
203
- value: transactionRequest.value,
204
- to: transactionRequest.to,
205
- data: transactionRequest.data,
206
- };
207
- multisigBatchTransactions.push(populatedTransaction);
208
- txHash = await this.multisig?.sendBatchTransaction(multisigBatchTransactions);
209
- }
210
- else {
211
- throw new TransactionError(LiFiErrorCode.TransactionUnprepared, 'Unable to prepare transaction.');
212
- }
216
+ // STEP 3: Send the transaction
217
+ // Make sure that the chain is still correct
218
+ const updatedClient = await this.checkClient(step, process);
219
+ if (!updatedClient) {
220
+ return step;
221
+ }
222
+ process = this.statusManager.updateProcess(step, process.type, permitSupported ? 'PERMIT_REQUIRED' : 'ACTION_REQUIRED');
223
+ if (!this.allowUserInteraction) {
224
+ return step;
225
+ }
226
+ if (atomicBatchSupported) {
227
+ const transferCall = {
228
+ chainId: fromChain.id,
229
+ data: transactionRequest.data,
230
+ to: transactionRequest.to,
231
+ value: transactionRequest.value,
232
+ };
233
+ calls.push(transferCall);
234
+ txHash = (await sendCalls(this.client, {
235
+ account: this.client.account,
236
+ calls,
237
+ }));
213
238
  }
214
239
  else {
240
+ if (permitSupported) {
241
+ const { data } = await signPermitMessage(this.client, transactionRequest, fromChain, step.action.fromToken.address, BigInt(step.action.fromAmount), nativePermit);
242
+ transactionRequest.to = fromChain.permit2Proxy;
243
+ transactionRequest.data = data;
244
+ try {
245
+ // Try to re-estimate the gas due to additional Permit data
246
+ transactionRequest.gas = await estimateGas(this.client, {
247
+ account: this.client.account,
248
+ to: transactionRequest.to,
249
+ data: transactionRequest.data,
250
+ value: transactionRequest.value,
251
+ });
252
+ }
253
+ catch {
254
+ // Let the wallet estimate the gas in case of failure
255
+ transactionRequest.gas = undefined;
256
+ }
257
+ process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED');
258
+ }
215
259
  txHash = await sendTransaction(this.client, {
216
260
  to: transactionRequest.to,
217
261
  account: this.client.account,
@@ -221,42 +265,40 @@ export class EVMStepExecutor extends BaseStepExecutor {
221
265
  gasPrice: transactionRequest.gasPrice,
222
266
  maxFeePerGas: transactionRequest.maxFeePerGas,
223
267
  maxPriorityFeePerGas: transactionRequest.maxPriorityFeePerGas,
224
- chain: null,
225
268
  });
226
269
  }
227
270
  // STEP 4: Wait for the transaction
228
- if (isMultisigClient) {
229
- process = this.statusManager.updateProcess(step, process.type, 'ACTION_REQUIRED', {
230
- multisigTxHash: txHash,
231
- });
232
- }
233
- else {
234
- process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
271
+ process = this.statusManager.updateProcess(step, process.type, 'PENDING',
272
+ // When atomic batch is supported, txHash represents the batch hash rather than an individual transaction hash at this point
273
+ atomicBatchSupported
274
+ ? {
275
+ atomicBatchSupported,
276
+ }
277
+ : {
235
278
  txHash: txHash,
236
279
  txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${txHash}`,
237
280
  });
238
- }
239
281
  }
240
- const transactionReceipt = await waitForTransactionReceipt({
241
- client: this.client,
242
- chainId: fromChain.id,
243
- txHash,
244
- onReplaced: (response) => {
245
- this.statusManager.updateProcess(step, process.type, 'PENDING', {
246
- txHash: response.transaction.hash,
247
- txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${response.transaction.hash}`,
248
- });
249
- },
250
- });
251
- // if it's multisig wallet client and the process is in ACTION_REQUIRED
252
- // then signatures are still needed
253
- if (isMultisigClient && process.status === 'ACTION_REQUIRED') {
254
- await updateMultisigRouteProcess(transactionReceipt?.transactionHash || txHash, step, process.type, fromChain, this.statusManager, this.multisig);
282
+ let transactionReceipt;
283
+ if (atomicBatchSupported) {
284
+ transactionReceipt = await waitForBatchTransactionReceipt(this.client, txHash);
285
+ }
286
+ else {
287
+ transactionReceipt = await waitForTransactionReceipt({
288
+ client: this.client,
289
+ chainId: fromChain.id,
290
+ txHash,
291
+ onReplaced: (response) => {
292
+ this.statusManager.updateProcess(step, process.type, 'PENDING', {
293
+ txHash: response.transaction.hash,
294
+ txLink: `${fromChain.metamask.blockExplorerUrls[0]}tx/${response.transaction.hash}`,
295
+ });
296
+ },
297
+ });
255
298
  }
256
299
  // Update pending process if the transaction hash from the receipt is different.
257
300
  // This might happen if the transaction was replaced.
258
- if (!isMultisigClient &&
259
- transactionReceipt?.transactionHash &&
301
+ if (transactionReceipt?.transactionHash &&
260
302
  transactionReceipt.transactionHash !== txHash) {
261
303
  process = this.statusManager.updateProcess(step, process.type, 'PENDING', {
262
304
  txHash: transactionReceipt.transactionHash,
@@ -289,12 +331,11 @@ export class EVMStepExecutor extends BaseStepExecutor {
289
331
  chainId: toChain.id,
290
332
  });
291
333
  }
292
- let statusResponse;
293
334
  try {
294
335
  if (!processTxHash) {
295
336
  throw new Error('Transaction hash is undefined.');
296
337
  }
297
- statusResponse = (await waitForReceivingTransaction(processTxHash, this.statusManager, process.type, step));
338
+ const statusResponse = (await waitForReceivingTransaction(processTxHash, this.statusManager, process.type, step));
298
339
  const statusReceiving = statusResponse.receiving;
299
340
  process = this.statusManager.updateProcess(step, process.type, 'DONE', {
300
341
  substatus: statusResponse.substatus,
@@ -337,7 +378,6 @@ export class EVMStepExecutor extends BaseStepExecutor {
337
378
  }
338
379
  });
339
380
  this.client = options.client;
340
- this.multisig = options.multisig;
341
381
  }
342
382
  }
343
383
  //# sourceMappingURL=EVMStepExecutor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EVMStepExecutor.js","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EVMStepExecutor.js","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"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"}